/*
 * Main.java
 *
 */
package Ventanas;

import Funciones.DocumentRenderer;
import Clases.Prestamos;
import BaseDeDatos.Datos;
import Clases.Equipos;
import Clases.Basico;
import Clases.Componentes;
import Clases.Persona;
import Funciones.Varias;
import java.awt.Color;
import java.awt.Cursor;
import java.util.ArrayList;
import javax.swing.JFileChooser;
import javax.swing.JOptionPane;
import javax.swing.event.HyperlinkEvent;

/**
 * @author  Franco y Pato
 */

public class Main extends javax.swing.JFrame {

    /**
     * 
     */
    public ArrayList<String> sCmbBox= new ArrayList<String>();
    private Persona oMiPersona = new Persona();
    /**
     * 
     * @param oPersona
     */
    @SuppressWarnings("LeakingThisInConstructor")
        //A esta función se le entregan los datos del usuario que ingreso al sistema.
    public Main(Persona oPersona) {
        initComponents();
        this.oMiPersona = oPersona;
        //Posiciona la ventana en el centro de la pantalla.
        this.setLocationRelativeTo(this);
        //Setea el título del programa.
        this.setTitle("Electro-Inventario");
        //Seteo un label con el nombre del usuario y sus privilegios.
        jUsuarioLbl.setText("Usted es: "+oPersona.sNombre+" y tiene permisos de: "+oPersona.sPrivilegios);
        jIconoLbl.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/user-online.png")));
        if (oMiPersona.sPrivilegios.equals("Alumno"))
            {
                //Si el usuario es un alumno, entonces:
                //Seteo el combobox de crear un usuario en alumnos para que este usuario solo pueda crear alumnos.
                sCmbBox.add("Alumno");//Agrega al combobox el item alumno.
                jElectroInventario.remove(jPnlConfig);//Quita el panel configuración de la ventana.
                jCursoBtnModificar.setVisible(false);//Oculta el botón modificar del panel de cursos
                jCursoBtnEleminar.setVisible(false);//Oculta el botón eliminar del panel de cursos.
                jCompAgregar.setVisible(false);//Oculta el botón agregar componentes del panel componentes.
                jPrestamosBtnCargar.setVisible(false);//Oculta el botón cargar del panel prestamos.
                ;
            }
        if (oMiPersona.sPrivilegios.equals("Profesor"))
            {
                //Si el usuario es un profesor, entonces:
                //Seteo el combobox de crear un usuario en alumnos para que este usuario solo pueda crear alumnos y profesores.
                sCmbBox.add("Alumno");//Agrega al combobox el item alumno.
                sCmbBox.add("Profesor");//Agrega al combox el item profesor.
                jElectroInventario.remove(jPnlConfig);//Quita el panel configuración de la ventana.
            }
        if (oMiPersona.sPrivilegios.equals("Administrador"))
            {
                //Si el usuario es un administrador, entonces:
                //Seteo el combobox de crear un usuario en alumnos para que este usuario pueda crear lo que desee..
                sCmbBox.add("Alumno");
                sCmbBox.add("Administrador");
                sCmbBox.add("Profesor");
            }
        //Setea en el combobox de privilegios de la ventana alumnos.
        jCursoCmbPrivilegios.setModel(Varias.LimitarCmbBoxUser(sCmbBox));
        //Creo un objeto Datos para la conexión a la base de datos.
    }
    
    /**
     * 
     */
    public void LimpiarCursos(){
        //Esta función borra todos los text files de la pestaña cursos
        jCursotxtNombre.setText("");//Setea el texto en nada.
        jCursotxtfTelefono.setText("");//Setea el texto en nada.
        jCursotxtfEmail.setText("");//Setea el texto en nada.
        jCursotxtPass.setText("");//Setea el texto en nada.
        jCursoCmbPrivilegios.setSelectedItem("Seleccionar");//Setea el primer item del casillero.
        jCursocbxCurso.setSelectedItem("Seleccionar");//Setea el primer item del casillero.
    }
    
    /**
     * 
     */
    public void LimpiarEquipo(){
        //Esta función borra todos los text files de la ventana equipos.
        jEquipoTxtAclar.setText("");//Borra las aclaraciones.
        jEquipoTxtCod.setText("");//Borra el código.
        jEquipoTxtDesc.setText("");//Borra la descripción.
        jEquipoTxtManual.setText("");//Borra el manual.
        jEquipoTxtNombre.setText("");//Borra el nombre.
        jEquipoTxtStockD.setText("");//Borra el stock deseado.
        jEquipoTxtStockA.setText("");//Borra el stock inicial
        jEquipoTxtUbManual.setText("");//Borra la ubicación del manual.
        jEquipoTxtUbicacion.setText("");//Borra la ubicación.
    }
    
    /**
     * 
     */
    public void LimpiarBibliografia(){
        //Borra todos los text files de la ventana bibliografía.
        jBiblTxtAclar.setText("");//Borra las aclaraciones.
        jBiblTxtNombre.setText("");//Borra el nombre.
        jBiblTxtStockD.setText("");//Borra el stock deseado.
        jBiblTxtStockA.setText("");//Borra el stock inicial.
        jBiblTxtUbicacion.setText("");//Borra la ubicación.
    }
    
    /**
     * 
     */
    public void LimpiarComponentes(){
        //Borra todos los text files de la ventana componentes.
        jCompTxtAclar.setText("");//Borra las aclaraciones.
        jCompTxtEncapsulado.setText("");//Borra el encapsulado.
        jCompTxtPotencia.setText("");//Borra la potencia.
        jCompTxtTension.setText("");//Borra la tensión.
        jCompTxtNombre.setText("");//Borra el nombre.
        jCompTxtStockD.setText("");//Borra el stock deseado.
        jCompTxtStockA.setText("");//Borra el stock inicial
        jCompTxtValor.setText("");//Borra el valor.
        jCompTxtUbicacion.setText("");//Borra la ubicación.
        jCompCmbCategoria.setSelectedItem("Seleccionar");//Selecciona la primer casilla de la categoría
        jCompCmbSubcategoria.setSelectedItem("Seleccionar");//Selecciona la primer casilla de la subcategoría.
    }
    
    /**
     * 
     */
    public void LimpiarPrestamos(){
        //Borra todos los text files de la pestaña prestamos.
        jPrestamosTxtCantidad.setText("");//Setea el texto en nada.
        jPrestamoscmbNombre.setSelectedItem("Seleccionar");//Setea el primer item del casillero del nombre.
        jPrestamoscbxCurso.setSelectedItem("Seleccionar");//Setea el primer item del casillero del curso.
        jPrestamosCmbTipoComponentes.setSelectedItem("Seleccionar");//Setea el primer item del casillero Tipo de Componentes.
        jPrestamosCmbComponentes.setSelectedItem("Seleccionar");//Setea el el primer item del casillero Componentes.
        jPrestamosCmbOrdenar.setSelectedItem("Seleccionar");//Setea el primer item del casillero para ordenar la tabla de los prestamos.
    }    

    // <editor-fold defaultstate="collapsed" desc="Generated Code">//GEN-BEGIN:initComponents
    private void initComponents() {

        buttonGroup1 = new javax.swing.ButtonGroup();
        jButton4 = new javax.swing.JButton();
        jFrameInformes = new javax.swing.JDialog();
        jpnlInforme = new javax.swing.JPanel();
        jTextPane1 = new javax.swing.JScrollPane();
        jtxtInforme = new javax.swing.JEditorPane();
        jInformeBtnImprimir = new javax.swing.JButton();
        jFrameEquipos = new javax.swing.JFrame();
        jEquipoLblNombre = new javax.swing.JLabel();
        jEquipoTxtNombre = new javax.swing.JTextField();
        jEquipoLblUbicacion = new javax.swing.JLabel();
        jEquipoTxtUbicacion = new javax.swing.JTextField();
        jEquipoLblStockA = new javax.swing.JLabel();
        jEquipoTxtStockA = new javax.swing.JTextField();
        jEquipoLblStockD = new javax.swing.JLabel();
        jEquipoTxtStockD = new javax.swing.JTextField();
        jEquipoLblAclar = new javax.swing.JLabel();
        jEquipoScrollPane2 = new javax.swing.JScrollPane();
        jEquipoTxtAclar = new javax.swing.JTextArea();
        jPnlEquipoBibl = new javax.swing.JPanel();
        jEquipoBtnCargar = new javax.swing.JButton();
        jEquipoBtnBuscar = new javax.swing.JButton();
        jEquipoBtnEliminar = new javax.swing.JButton();
        jEquipoBtnLimpiar = new javax.swing.JButton();
        jEquipoBtnModificar = new javax.swing.JButton();
        jEquipoLblCod = new javax.swing.JLabel();
        jEquipoTxtCod = new javax.swing.JTextField();
        jEquipoLblManual = new javax.swing.JLabel();
        jEquipoTxtManual = new javax.swing.JTextField();
        jEquipoLblUbManual = new javax.swing.JLabel();
        jEquipoTxtUbManual = new javax.swing.JTextField();
        jEquipoLblDescrip = new javax.swing.JLabel();
        jEquipoScrollPane3 = new javax.swing.JScrollPane();
        jEquipoTxtDesc = new javax.swing.JTextArea();
        jFrameBibliografia = new javax.swing.JFrame();
        jBiblLblNombre = new javax.swing.JLabel();
        jBiblTxtNombre = new javax.swing.JTextField();
        jBiblLblUbicacion = new javax.swing.JLabel();
        jBiblTxtUbicacion = new javax.swing.JTextField();
        jBiblLblStockA = new javax.swing.JLabel();
        jBiblTxtStockA = new javax.swing.JTextField();
        jBiblLblStockD = new javax.swing.JLabel();
        jBiblTxtStockD = new javax.swing.JTextField();
        jBiblLblAclar = new javax.swing.JLabel();
        jBiblScrollPane = new javax.swing.JScrollPane();
        jBiblTxtAclar = new javax.swing.JTextArea();
        jBiblCargar = new javax.swing.JButton();
        jBiblBuscar = new javax.swing.JButton();
        jBiblLimpiar = new javax.swing.JButton();
        jBiblModificar = new javax.swing.JButton();
        jBiblEleminar = new javax.swing.JButton();
        jFrameComponentes = new javax.swing.JFrame();
        jCompLblNombre = new javax.swing.JLabel();
        jCompTxtNombre = new javax.swing.JTextField();
        jCompLblUbicacion = new javax.swing.JLabel();
        jCompTxtUbicacion = new javax.swing.JTextField();
        jCompLblStockA = new javax.swing.JLabel();
        jCompTxtStockA = new javax.swing.JTextField();
        jCompLblStockD = new javax.swing.JLabel();
        jCompTxtStockD = new javax.swing.JTextField();
        jCompLblAclar = new javax.swing.JLabel();
        jCompScrollPane = new javax.swing.JScrollPane();
        jCompTxtAclar = new javax.swing.JTextArea();
        jCompBtnCargar = new javax.swing.JButton();
        jCompBtnBuscar = new javax.swing.JButton();
        jCompBtnEliminar = new javax.swing.JButton();
        jCompBtnLimpiar = new javax.swing.JButton();
        jCompBtnModificar = new javax.swing.JButton();
        jCompLblCategoria = new javax.swing.JLabel();
        jCompLblSubcategoria = new javax.swing.JLabel();
        jCompLblPotencia = new javax.swing.JLabel();
        jCompTxtValor = new javax.swing.JTextField();
        jCompLblValor = new javax.swing.JLabel();
        jCompCmbCategoria = new javax.swing.JComboBox();
        jCompCmbSubcategoria = new javax.swing.JComboBox();
        jCompTxtPotencia = new javax.swing.JTextField();
        jCompLblEncapsulado = new javax.swing.JLabel();
        jCompTxtEncapsulado = new javax.swing.JTextField();
        jCompLblTension = new javax.swing.JLabel();
        jCompTxtTension = new javax.swing.JTextField();
        jCreditos = new javax.swing.JDialog();
        jCreditosLbl = new javax.swing.JLabel();
        jScrollPane1 = new javax.swing.JScrollPane();
        jCreditosTxtPato = new javax.swing.JTextArea();
        jScrollPane2 = new javax.swing.JScrollPane();
        jCreditosTxtFranco = new javax.swing.JTextArea();
        jElectroInventario = new javax.swing.JTabbedPane();
        jPnlPrestamos = new javax.swing.JPanel();
        jPrestamoslblNombre = new javax.swing.JLabel();
        jPrestamoslblCurso = new javax.swing.JLabel();
        jPrestamoscbxCurso = new javax.swing.JComboBox();
        jPrestamoscmbNombre = new javax.swing.JComboBox();
        jPrestamosLblTipoE = new javax.swing.JLabel();
        jPrestamosCmbTipoComponentes = new javax.swing.JComboBox();
        jPrestamoslblComponentes = new javax.swing.JLabel();
        jPrestamosCmbComponentes = new javax.swing.JComboBox();
        jPrestamosLblCantidad = new javax.swing.JLabel();
        jPrestamosTxtCantidad = new javax.swing.JTextField();
        jPrestamosBtnCargar = new javax.swing.JButton();
        jPrestamosBtnVer = new javax.swing.JButton();
        jPrestamosBtnLimpiar = new javax.swing.JButton();
        jPrestamosLblOrdenar = new javax.swing.JLabel();
        jPrestamosCmbOrdenar = new javax.swing.JComboBox();
        jPnlCursos = new javax.swing.JPanel();
        jCursospnl = new javax.swing.JPanel();
        jCursoBtnBuscar = new javax.swing.JButton();
        jCursolblNombre = new javax.swing.JLabel();
        jCursolblCurso = new javax.swing.JLabel();
        jCursolblTelefono = new javax.swing.JLabel();
        jCursolblEmail = new javax.swing.JLabel();
        jCursotxtNombre = new javax.swing.JTextField();
        jCursotxtfTelefono = new javax.swing.JTextField();
        jCursotxtfEmail = new javax.swing.JTextField();
        jCursocbxCurso = new javax.swing.JComboBox();
        jCursoBtnLimpiar = new javax.swing.JButton();
        jCursoBtnEleminar = new javax.swing.JButton();
        jCursoVerLista = new javax.swing.JButton();
        jCursoBtnModificar = new javax.swing.JButton();
        jCursoLblPass = new javax.swing.JLabel();
        jCursotxtPass = new javax.swing.JPasswordField();
        jCursoLblPrivilegios = new javax.swing.JLabel();
        jCursoBtnGuardar = new javax.swing.JButton();
        jCursoCmbPrivilegios = new javax.swing.JComboBox();
        jLblAclaracion = new javax.swing.JLabel();
        jPnlComp = new javax.swing.JPanel();
        jCompCmbItem = new javax.swing.JComboBox();
        jCompVerStock = new javax.swing.JButton();
        jCompAgregar = new javax.swing.JButton();
        jPnlConfig = new javax.swing.JPanel();
        jConfigLblPersonas = new javax.swing.JLabel();
        jConfigBtnPersonas = new javax.swing.JButton();
        jConfigLblComponentes = new javax.swing.JLabel();
        jConifgBtnComponentes = new javax.swing.JButton();
        jConfigLblPrestamos = new javax.swing.JLabel();
        jConfigBtnPrestamos = new javax.swing.JButton();
        jConfScrollPersonas = new javax.swing.JScrollPane();
        jConfigTxtPersonas = new javax.swing.JTextArea();
        jConfigScrollComponentes = new javax.swing.JScrollPane();
        jConfigTxtComponentes = new javax.swing.JTextArea();
        jConfigScrollPrestamos = new javax.swing.JScrollPane();
        jConfigTxtPrestamos = new javax.swing.JTextArea();
        jUsuarioLbl = new javax.swing.JLabel();
        jIconoLbl = new javax.swing.JLabel();
        jCerrarLbl = new javax.swing.JLabel();
        jCreditosBtn = new javax.swing.JButton();

        jButton4.setText("jButton4");

        jFrameInformes.setTitle("Informes");
        jFrameInformes.setMinimumSize(new java.awt.Dimension(800, 500));

        jtxtInforme.setContentType("text/html");
        jtxtInforme.setEditable(false);
        jtxtInforme.addHyperlinkListener(new javax.swing.event.HyperlinkListener() {
            public void hyperlinkUpdate(javax.swing.event.HyperlinkEvent evt) {
                jtxtInformeHyperlinkUpdate(evt);
            }
        });
        jTextPane1.setViewportView(jtxtInforme);

        jInformeBtnImprimir.setText("Imprimir");
        jInformeBtnImprimir.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jInformeBtnImprimirActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jpnlInformeLayout = new javax.swing.GroupLayout(jpnlInforme);
        jpnlInforme.setLayout(jpnlInformeLayout);
        jpnlInformeLayout.setHorizontalGroup(
            jpnlInformeLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jpnlInformeLayout.createSequentialGroup()
                .addContainerGap(581, Short.MAX_VALUE)
                .addComponent(jInformeBtnImprimir)
                .addGap(37, 37, 37))
            .addComponent(jTextPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 686, Short.MAX_VALUE)
        );
        jpnlInformeLayout.setVerticalGroup(
            jpnlInformeLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jpnlInformeLayout.createSequentialGroup()
                .addComponent(jTextPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 277, Short.MAX_VALUE)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jInformeBtnImprimir))
        );

        javax.swing.GroupLayout jFrameInformesLayout = new javax.swing.GroupLayout(jFrameInformes.getContentPane());
        jFrameInformes.getContentPane().setLayout(jFrameInformesLayout);
        jFrameInformesLayout.setHorizontalGroup(
            jFrameInformesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jFrameInformesLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jpnlInforme, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addContainerGap())
        );
        jFrameInformesLayout.setVerticalGroup(
            jFrameInformesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jFrameInformesLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jpnlInforme, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                .addContainerGap())
        );

        jFrameEquipos.setTitle("Cargado de Equipos");
        jFrameEquipos.setMinimumSize(new java.awt.Dimension(1000, 400));

        jEquipoLblNombre.setText("Nombre:");

        jEquipoTxtNombre.setToolTipText("Nombre del Equipo");

        jEquipoLblUbicacion.setText("Ubicacion:");

        jEquipoLblStockA.setText("Stock Actual:");

        jEquipoLblStockD.setText("Stock Deseado:");

        jEquipoLblAclar.setText("Aclaraciones:");

        jEquipoTxtAclar.setColumns(20);
        jEquipoTxtAclar.setRows(5);
        jEquipoScrollPane2.setViewportView(jEquipoTxtAclar);

        javax.swing.GroupLayout jPnlEquipoBiblLayout = new javax.swing.GroupLayout(jPnlEquipoBibl);
        jPnlEquipoBibl.setLayout(jPnlEquipoBiblLayout);
        jPnlEquipoBiblLayout.setHorizontalGroup(
            jPnlEquipoBiblLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 0, Short.MAX_VALUE)
        );
        jPnlEquipoBiblLayout.setVerticalGroup(
            jPnlEquipoBiblLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGap(0, 0, Short.MAX_VALUE)
        );

        jEquipoBtnCargar.setText("Cargar");
        jEquipoBtnCargar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jEquipoBtnCargarActionPerformed(evt);
            }
        });

        jEquipoBtnBuscar.setText("Buscar");
        jEquipoBtnBuscar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jEquipoBtnBuscarActionPerformed(evt);
            }
        });

        jEquipoBtnEliminar.setText("Eliminar");
        jEquipoBtnEliminar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jEquipoBtnEliminarActionPerformed(evt);
            }
        });

        jEquipoBtnLimpiar.setText("Limpiar");
        jEquipoBtnLimpiar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jEquipoBtnLimpiarActionPerformed(evt);
            }
        });

        jEquipoBtnModificar.setText("Modificar");
        jEquipoBtnModificar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jEquipoBtnModificarActionPerformed(evt);
            }
        });

        jEquipoLblCod.setText("Codigo:");

        jEquipoLblManual.setText("Manuales:");

        jEquipoLblUbManual.setText("Ubic. Manual:");

        jEquipoLblDescrip.setText("Descripcion:");

        jEquipoTxtDesc.setColumns(20);
        jEquipoTxtDesc.setRows(5);
        jEquipoScrollPane3.setViewportView(jEquipoTxtDesc);

        javax.swing.GroupLayout jFrameEquiposLayout = new javax.swing.GroupLayout(jFrameEquipos.getContentPane());
        jFrameEquipos.getContentPane().setLayout(jFrameEquiposLayout);
        jFrameEquiposLayout.setHorizontalGroup(
            jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jFrameEquiposLayout.createSequentialGroup()
                .addGap(30, 30, 30)
                .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jEquipoLblStockD)
                    .addComponent(jEquipoLblStockA)
                    .addComponent(jEquipoLblUbicacion)
                    .addComponent(jEquipoLblNombre)
                    .addGroup(jFrameEquiposLayout.createSequentialGroup()
                        .addGap(15, 15, 15)
                        .addComponent(jPnlEquipoBibl, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                    .addComponent(jEquipoLblAclar))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jFrameEquiposLayout.createSequentialGroup()
                        .addComponent(jEquipoScrollPane2, javax.swing.GroupLayout.DEFAULT_SIZE, 258, Short.MAX_VALUE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED))
                    .addGroup(jFrameEquiposLayout.createSequentialGroup()
                        .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jEquipoTxtStockD, javax.swing.GroupLayout.DEFAULT_SIZE, 258, Short.MAX_VALUE)
                            .addComponent(jEquipoTxtStockA, javax.swing.GroupLayout.DEFAULT_SIZE, 258, Short.MAX_VALUE)
                            .addComponent(jEquipoTxtUbicacion, javax.swing.GroupLayout.DEFAULT_SIZE, 258, Short.MAX_VALUE))
                        .addGap(12, 12, 12))
                    .addGroup(jFrameEquiposLayout.createSequentialGroup()
                        .addComponent(jEquipoTxtNombre, javax.swing.GroupLayout.DEFAULT_SIZE, 258, Short.MAX_VALUE)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)))
                .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(jFrameEquiposLayout.createSequentialGroup()
                        .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jEquipoLblUbManual)
                            .addGroup(jFrameEquiposLayout.createSequentialGroup()
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(jEquipoLblCod)
                                    .addComponent(jEquipoLblManual)))
                            .addComponent(jEquipoLblDescrip))
                        .addGap(12, 12, 12)
                        .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jEquipoTxtUbManual, javax.swing.GroupLayout.DEFAULT_SIZE, 322, Short.MAX_VALUE)
                            .addComponent(jEquipoTxtManual, javax.swing.GroupLayout.DEFAULT_SIZE, 322, Short.MAX_VALUE)
                            .addComponent(jEquipoTxtCod, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 322, Short.MAX_VALUE)
                            .addComponent(jEquipoScrollPane3, javax.swing.GroupLayout.DEFAULT_SIZE, 322, Short.MAX_VALUE))
                        .addContainerGap())
                    .addGroup(jFrameEquiposLayout.createSequentialGroup()
                        .addGap(36, 36, 36)
                        .addComponent(jEquipoBtnCargar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jEquipoBtnBuscar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jEquipoBtnLimpiar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jEquipoBtnModificar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jEquipoBtnEliminar)
                        .addContainerGap())))
        );
        jFrameEquiposLayout.setVerticalGroup(
            jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jFrameEquiposLayout.createSequentialGroup()
                .addGap(47, 47, 47)
                .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jEquipoLblNombre)
                    .addComponent(jEquipoTxtCod, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jEquipoLblCod)
                    .addComponent(jEquipoTxtNombre, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jEquipoTxtUbicacion, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jEquipoLblUbicacion)
                    .addComponent(jEquipoTxtManual, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jEquipoLblManual))
                .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jFrameEquiposLayout.createSequentialGroup()
                        .addGap(7, 7, 7)
                        .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jEquipoTxtStockA, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jEquipoLblStockA)
                            .addComponent(jEquipoTxtUbManual, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addGroup(jFrameEquiposLayout.createSequentialGroup()
                                .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                                    .addComponent(jEquipoLblStockD)
                                    .addComponent(jEquipoTxtStockD, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addGroup(jFrameEquiposLayout.createSequentialGroup()
                                        .addComponent(jEquipoLblAclar)
                                        .addGap(70, 70, 70)
                                        .addComponent(jPnlEquipoBibl, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                    .addComponent(jEquipoScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                                .addGap(24, 24, 24))
                            .addComponent(jEquipoScrollPane3, javax.swing.GroupLayout.PREFERRED_SIZE, 159, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addGap(31, 31, 31)
                        .addGroup(jFrameEquiposLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jEquipoBtnEliminar)
                            .addComponent(jEquipoBtnModificar)
                            .addComponent(jEquipoBtnLimpiar)
                            .addComponent(jEquipoBtnBuscar)
                            .addComponent(jEquipoBtnCargar)))
                    .addGroup(jFrameEquiposLayout.createSequentialGroup()
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jEquipoLblUbManual)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                        .addComponent(jEquipoLblDescrip)))
                .addContainerGap())
        );

        jFrameBibliografia.setTitle("Cargado de Bibliografías");
        jFrameBibliografia.setMinimumSize(new java.awt.Dimension(721, 382));

        jBiblLblNombre.setText("Nombre:");

        jBiblLblUbicacion.setText("Ubicación:");

        jBiblLblStockA.setText("Stock Actual:");

        jBiblTxtStockA.setToolTipText("");

        jBiblLblStockD.setText("Stock Deseado:");

        jBiblLblAclar.setText("Aclaraciones:");

        jBiblTxtAclar.setColumns(20);
        jBiblTxtAclar.setRows(5);
        jBiblScrollPane.setViewportView(jBiblTxtAclar);

        jBiblCargar.setText("Cargar");
        jBiblCargar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jBiblCargarActionPerformed(evt);
            }
        });

        jBiblBuscar.setText("Buscar");
        jBiblBuscar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jBiblBuscarActionPerformed(evt);
            }
        });

        jBiblLimpiar.setText("Limpiar");
        jBiblLimpiar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jBiblLimpiarActionPerformed(evt);
            }
        });

        jBiblModificar.setText("Modificar");
        jBiblModificar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jBiblModificarActionPerformed(evt);
            }
        });

        jBiblEleminar.setText("Eliminar");
        jBiblEleminar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jBiblEleminarActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jFrameBibliografiaLayout = new javax.swing.GroupLayout(jFrameBibliografia.getContentPane());
        jFrameBibliografia.getContentPane().setLayout(jFrameBibliografiaLayout);
        jFrameBibliografiaLayout.setHorizontalGroup(
            jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jFrameBibliografiaLayout.createSequentialGroup()
                .addGap(30, 30, 30)
                .addGroup(jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jFrameBibliografiaLayout.createSequentialGroup()
                        .addComponent(jBiblLblAclar)
                        .addContainerGap())
                    .addGroup(jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(jFrameBibliografiaLayout.createSequentialGroup()
                            .addComponent(jBiblCargar)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(jBiblBuscar)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(jBiblLimpiar)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(jBiblModificar)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addComponent(jBiblEleminar)
                            .addGap(119, 119, 119))
                        .addGroup(jFrameBibliografiaLayout.createSequentialGroup()
                            .addGroup(jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jBiblLblStockD)
                                .addComponent(jBiblLblStockA)
                                .addComponent(jBiblLblUbicacion)
                                .addComponent(jBiblLblNombre))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addGroup(jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jBiblTxtStockD, javax.swing.GroupLayout.DEFAULT_SIZE, 343, Short.MAX_VALUE)
                                .addComponent(jBiblTxtStockA, javax.swing.GroupLayout.DEFAULT_SIZE, 343, Short.MAX_VALUE)
                                .addComponent(jBiblTxtUbicacion, javax.swing.GroupLayout.DEFAULT_SIZE, 343, Short.MAX_VALUE)
                                .addComponent(jBiblTxtNombre, javax.swing.GroupLayout.DEFAULT_SIZE, 343, Short.MAX_VALUE)
                                .addComponent(jBiblScrollPane, javax.swing.GroupLayout.Alignment.TRAILING, javax.swing.GroupLayout.DEFAULT_SIZE, 343, Short.MAX_VALUE))
                            .addGap(28, 28, 28)))))
        );
        jFrameBibliografiaLayout.setVerticalGroup(
            jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jFrameBibliografiaLayout.createSequentialGroup()
                .addGap(37, 37, 37)
                .addGroup(jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jBiblTxtNombre, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jBiblLblNombre))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jBiblTxtUbicacion, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jBiblLblUbicacion))
                .addGap(7, 7, 7)
                .addGroup(jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jBiblTxtStockA, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jBiblLblStockA))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jBiblLblStockD)
                    .addComponent(jBiblTxtStockD, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jBiblLblAclar)
                    .addComponent(jBiblScrollPane, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 63, Short.MAX_VALUE)
                .addGroup(jFrameBibliografiaLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jBiblCargar)
                    .addComponent(jBiblBuscar)
                    .addComponent(jBiblLimpiar)
                    .addComponent(jBiblModificar)
                    .addComponent(jBiblEleminar))
                .addGap(34, 34, 34))
        );

        jFrameComponentes.setTitle("Cargado de Equipos");
        jFrameComponentes.setMinimumSize(new java.awt.Dimension(850, 382));

        jCompLblNombre.setText("Nombre:");

        jCompLblUbicacion.setText("Ubicacion:");

        jCompLblStockA.setText("Stock Actual:");

        jCompLblStockD.setText("Stock Deseado:");

        jCompLblAclar.setText("Aclaraciones:");

        jCompTxtAclar.setColumns(20);
        jCompTxtAclar.setRows(5);
        jCompScrollPane.setViewportView(jCompTxtAclar);

        jCompBtnCargar.setText("Cargar");
        jCompBtnCargar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCompBtnCargarActionPerformed(evt);
            }
        });

        jCompBtnBuscar.setText("Buscar");
        jCompBtnBuscar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCompBtnBuscarActionPerformed(evt);
            }
        });

        jCompBtnEliminar.setText("Eliminar");
        jCompBtnEliminar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCompBtnEliminarActionPerformed(evt);
            }
        });

        jCompBtnLimpiar.setText("Limpiar");
        jCompBtnLimpiar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCompBtnLimpiarActionPerformed(evt);
            }
        });

        jCompBtnModificar.setText("Modificar");
        jCompBtnModificar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCompBtnModificarActionPerformed(evt);
            }
        });

        jCompLblCategoria.setText("Categoria:");

        jCompLblSubcategoria.setText("Subcategoria:");

        jCompLblPotencia.setText("Potencia:");

        jCompLblValor.setText("Valor:");

        jCompCmbCategoria.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Seleccionar", "Resistencia", "Capacitores", "Bobinas", " " }));

        jCompCmbSubcategoria.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Seleccionar", "Capacidad", "Resistencia", "inductancia" }));

        jCompLblEncapsulado.setText("Encapsulado:");

        jCompLblTension.setText("Tensión:");

        javax.swing.GroupLayout jFrameComponentesLayout = new javax.swing.GroupLayout(jFrameComponentes.getContentPane());
        jFrameComponentes.getContentPane().setLayout(jFrameComponentesLayout);
        jFrameComponentesLayout.setHorizontalGroup(
            jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jFrameComponentesLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jCompLblStockD)
                    .addComponent(jCompLblStockA)
                    .addComponent(jCompLblUbicacion)
                    .addComponent(jCompLblNombre)
                    .addComponent(jCompLblAclar))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jCompScrollPane, javax.swing.GroupLayout.DEFAULT_SIZE, 258, Short.MAX_VALUE)
                    .addComponent(jCompTxtStockD, javax.swing.GroupLayout.DEFAULT_SIZE, 258, Short.MAX_VALUE)
                    .addComponent(jCompTxtStockA, javax.swing.GroupLayout.DEFAULT_SIZE, 258, Short.MAX_VALUE)
                    .addComponent(jCompTxtUbicacion, javax.swing.GroupLayout.DEFAULT_SIZE, 258, Short.MAX_VALUE)
                    .addComponent(jCompTxtNombre, javax.swing.GroupLayout.DEFAULT_SIZE, 258, Short.MAX_VALUE))
                .addGap(12, 12, 12)
                .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(jFrameComponentesLayout.createSequentialGroup()
                        .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jCompLblCategoria)
                            .addComponent(jCompLblSubcategoria)
                            .addComponent(jCompLblValor)
                            .addComponent(jCompLblPotencia)
                            .addComponent(jCompLblEncapsulado)
                            .addComponent(jCompLblTension))
                        .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addGroup(jFrameComponentesLayout.createSequentialGroup()
                                .addGap(12, 12, 12)
                                .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                    .addComponent(jCompTxtPotencia)
                                    .addComponent(jCompTxtValor)
                                    .addComponent(jCompCmbCategoria, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                                    .addComponent(jCompCmbSubcategoria, 0, 229, Short.MAX_VALUE)))
                            .addGroup(jFrameComponentesLayout.createSequentialGroup()
                                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                    .addComponent(jCompTxtTension, javax.swing.GroupLayout.DEFAULT_SIZE, 229, Short.MAX_VALUE)
                                    .addComponent(jCompTxtEncapsulado))))
                        .addGap(24, 24, 24))
                    .addGroup(jFrameComponentesLayout.createSequentialGroup()
                        .addGap(36, 36, 36)
                        .addComponent(jCompBtnCargar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jCompBtnBuscar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jCompBtnLimpiar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jCompBtnModificar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jCompBtnEliminar)
                        .addContainerGap())))
        );
        jFrameComponentesLayout.setVerticalGroup(
            jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jFrameComponentesLayout.createSequentialGroup()
                .addGap(37, 37, 37)
                .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCompTxtNombre, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCompLblNombre)
                    .addComponent(jCompLblCategoria)
                    .addComponent(jCompCmbCategoria, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCompTxtUbicacion, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCompLblUbicacion)
                    .addComponent(jCompLblSubcategoria)
                    .addComponent(jCompCmbSubcategoria, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(7, 7, 7)
                .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCompTxtStockA, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCompLblStockA)
                    .addComponent(jCompTxtValor, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCompLblValor))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCompLblStockD)
                    .addComponent(jCompTxtStockD, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCompLblPotencia)
                    .addComponent(jCompTxtPotencia, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jFrameComponentesLayout.createSequentialGroup()
                        .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jCompLblEncapsulado)
                            .addComponent(jCompTxtEncapsulado, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jCompLblTension)
                            .addComponent(jCompTxtTension, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 104, Short.MAX_VALUE)
                        .addGroup(jFrameComponentesLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                            .addComponent(jCompBtnEliminar)
                            .addComponent(jCompBtnModificar)
                            .addComponent(jCompBtnLimpiar)
                            .addComponent(jCompBtnBuscar)
                            .addComponent(jCompBtnCargar)))
                    .addComponent(jCompScrollPane, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCompLblAclar))
                .addContainerGap())
        );

        jCreditosLbl.setText("Este programa ha sido desarrollado por:");

        jCreditosTxtPato.setColumns(20);
        jCreditosTxtPato.setEditable(false);
        jCreditosTxtPato.setRows(5);
        jCreditosTxtPato.setText("PERPETUA, Patricio\nCEL: 153452841\nFACE: Pato Perpetua\nEMAIL: pato2011usa@gmail.com\nSKYPE: patricio.perpetua");
        jScrollPane1.setViewportView(jCreditosTxtPato);

        jCreditosTxtFranco.setColumns(20);
        jCreditosTxtFranco.setEditable(false);
        jCreditosTxtFranco.setRows(5);
        jCreditosTxtFranco.setText("PIATTI, Franco\nCEL: 152144186\nFACE: Franco Piatti\nEMAIL: piattifranco@gmail.com\t\nSKYPE: franco.piatti");
        jScrollPane2.setViewportView(jCreditosTxtFranco);

        javax.swing.GroupLayout jCreditosLayout = new javax.swing.GroupLayout(jCreditos.getContentPane());
        jCreditos.getContentPane().setLayout(jCreditosLayout);
        jCreditosLayout.setHorizontalGroup(
            jCreditosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jCreditosLayout.createSequentialGroup()
                .addGroup(jCreditosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jCreditosLayout.createSequentialGroup()
                        .addGap(53, 53, 53)
                        .addComponent(jCreditosLbl))
                    .addGroup(jCreditosLayout.createSequentialGroup()
                        .addGap(34, 34, 34)
                        .addGroup(jCreditosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(jScrollPane2)
                            .addComponent(jScrollPane1, javax.swing.GroupLayout.DEFAULT_SIZE, 340, Short.MAX_VALUE))))
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );
        jCreditosLayout.setVerticalGroup(
            jCreditosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jCreditosLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jCreditosLbl)
                .addGap(18, 18, 18)
                .addComponent(jScrollPane1, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(18, 18, 18)
                .addComponent(jScrollPane2, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        setDefaultCloseOperation(javax.swing.WindowConstants.EXIT_ON_CLOSE);
        setTitle("ITS VIllada - Inventario Electronica");
        setMinimumSize(new java.awt.Dimension(589, 458));

        jElectroInventario.addChangeListener(new javax.swing.event.ChangeListener() {
            public void stateChanged(javax.swing.event.ChangeEvent evt) {
                jElectroInventarioStateChanged(evt);
            }
        });

        jPnlPrestamos.setCursor(new java.awt.Cursor(java.awt.Cursor.DEFAULT_CURSOR));

        jPrestamoslblNombre.setText("Nombre:");

        jPrestamoslblCurso.setText("Curso:");

        jPrestamoscbxCurso.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Seleccionar", "4° AÑO \"ei\"", "5° AÑO \"ei\"", "6° AÑO \"ei\"", "7° AÑO \"ei\"", "Profesores" }));
        jPrestamoscbxCurso.addItemListener(new java.awt.event.ItemListener() {
            public void itemStateChanged(java.awt.event.ItemEvent evt) {
                jPrestamoscbxCursoItemStateChanged(evt);
            }
        });

        jPrestamoscmbNombre.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Seleccionar" }));

        jPrestamosLblTipoE.setText("Tipo de Componente:");

        jPrestamosCmbTipoComponentes.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Seleccionar", "bibliografia", "componentes", "equipos" }));
        jPrestamosCmbTipoComponentes.addItemListener(new java.awt.event.ItemListener() {
            public void itemStateChanged(java.awt.event.ItemEvent evt) {
                jPrestamosCmbTipoComponentesItemStateChanged(evt);
            }
        });

        jPrestamoslblComponentes.setText("Componentes:");

        jPrestamosCmbComponentes.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Seleccionar" }));
        jPrestamosCmbComponentes.addItemListener(new java.awt.event.ItemListener() {
            public void itemStateChanged(java.awt.event.ItemEvent evt) {
                jPrestamosCmbComponentesItemStateChanged(evt);
            }
        });

        jPrestamosLblCantidad.setText("Cantidad:");

        jPrestamosBtnCargar.setText("Cargar");
        jPrestamosBtnCargar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jPrestamosBtnCargarActionPerformed(evt);
            }
        });

        jPrestamosBtnVer.setText("Ver Stock");
        jPrestamosBtnVer.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jPrestamosBtnVerActionPerformed(evt);
            }
        });

        jPrestamosBtnLimpiar.setText("Limpiar");
        jPrestamosBtnLimpiar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jPrestamosBtnLimpiarActionPerformed(evt);
            }
        });

        jPrestamosLblOrdenar.setText("Ordenar por:");

        jPrestamosCmbOrdenar.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Seleccionar", "legajo", "nombreU", "nombreA", "cantidad", "fecha_inicial", "fecha_devolucion" }));

        javax.swing.GroupLayout jPnlPrestamosLayout = new javax.swing.GroupLayout(jPnlPrestamos);
        jPnlPrestamos.setLayout(jPnlPrestamosLayout);
        jPnlPrestamosLayout.setHorizontalGroup(
            jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPnlPrestamosLayout.createSequentialGroup()
                .addGroup(jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPnlPrestamosLayout.createSequentialGroup()
                        .addGap(12, 12, 12)
                        .addGroup(jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(jPrestamosLblCantidad)
                            .addComponent(jPrestamosLblTipoE)
                            .addComponent(jPrestamoslblNombre)
                            .addComponent(jPrestamoslblCurso)
                            .addComponent(jPrestamoslblComponentes))
                        .addGap(18, 18, 18)
                        .addGroup(jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                            .addComponent(jPrestamosTxtCantidad)
                            .addComponent(jPrestamosCmbComponentes, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jPrestamoscbxCurso, 0, 157, Short.MAX_VALUE)
                            .addComponent(jPrestamoscmbNombre, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)
                            .addComponent(jPrestamosCmbTipoComponentes, 0, javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE)))
                    .addGroup(jPnlPrestamosLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(jPrestamosBtnCargar)
                        .addGap(18, 18, 18)
                        .addComponent(jPrestamosBtnVer)
                        .addGap(18, 18, 18)
                        .addComponent(jPrestamosBtnLimpiar))
                    .addGroup(jPnlPrestamosLayout.createSequentialGroup()
                        .addContainerGap()
                        .addComponent(jPrestamosLblOrdenar)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                        .addComponent(jPrestamosCmbOrdenar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)))
                .addContainerGap(218, Short.MAX_VALUE))
        );
        jPnlPrestamosLayout.setVerticalGroup(
            jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPnlPrestamosLayout.createSequentialGroup()
                .addGap(17, 17, 17)
                .addGroup(jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jPrestamoscbxCurso, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jPrestamoslblCurso))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jPrestamoscmbNombre, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jPrestamoslblNombre))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jPrestamosLblTipoE)
                    .addComponent(jPrestamosCmbTipoComponentes, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jPrestamosCmbComponentes, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jPrestamoslblComponentes))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jPrestamosLblCantidad)
                    .addComponent(jPrestamosTxtCantidad, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addGap(28, 28, 28)
                .addGroup(jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jPrestamosBtnCargar)
                    .addComponent(jPrestamosBtnVer)
                    .addComponent(jPrestamosBtnLimpiar))
                .addGap(27, 27, 27)
                .addGroup(jPnlPrestamosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jPrestamosLblOrdenar)
                    .addComponent(jPrestamosCmbOrdenar, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(80, Short.MAX_VALUE))
        );

        jElectroInventario.addTab("Prestamos", jPnlPrestamos);

        jCursoBtnBuscar.setText("Buscar");
        jCursoBtnBuscar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCursoBtnBuscarActionPerformed(evt);
            }
        });

        jCursolblNombre.setText("Nombre:");

        jCursolblCurso.setText("Curso:");

        jCursolblTelefono.setText("Teléfono:");

        jCursolblEmail.setText("Email:");

        jCursocbxCurso.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Seleccionar", "4° AÑO \"ei\"", "5° AÑO \"ei\"", "6° AÑO \"ei\"", "7° AÑO \"ei\"", "Profesores" }));

        jCursoBtnLimpiar.setText("Limpiar");
        jCursoBtnLimpiar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCursoBtnLimpiarActionPerformed(evt);
            }
        });

        jCursoBtnEleminar.setText("Eliminar");
        jCursoBtnEleminar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCursoBtnEleminarActionPerformed(evt);
            }
        });

        jCursoVerLista.setText("Ver Lista");
        jCursoVerLista.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCursoVerListaActionPerformed(evt);
            }
        });

        jCursoBtnModificar.setText("Modificar");
        jCursoBtnModificar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCursoBtnModificarActionPerformed(evt);
            }
        });

        jCursoLblPass.setText("Pass:");

        jCursoLblPrivilegios.setText("Privilegios:");

        jCursoBtnGuardar.setText("Guardar");
        jCursoBtnGuardar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCursoBtnGuardarActionPerformed(evt);
            }
        });

        jLblAclaracion.setFont(new java.awt.Font("URW Gothic L", 2, 10));
        jLblAclaracion.setText("Nombre, Apellido");

        javax.swing.GroupLayout jCursospnlLayout = new javax.swing.GroupLayout(jCursospnl);
        jCursospnl.setLayout(jCursospnlLayout);
        jCursospnlLayout.setHorizontalGroup(
            jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jCursospnlLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addGroup(jCursospnlLayout.createSequentialGroup()
                        .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jCursolblEmail)
                            .addComponent(jCursolblTelefono)
                            .addComponent(jCursolblCurso)
                            .addComponent(jCursolblNombre)
                            .addComponent(jCursoLblPass))
                        .addGap(17, 17, 17))
                    .addGroup(jCursospnlLayout.createSequentialGroup()
                        .addComponent(jCursoLblPrivilegios)
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)))
                .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jCursoCmbPrivilegios, javax.swing.GroupLayout.PREFERRED_SIZE, 149, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(jCursospnlLayout.createSequentialGroup()
                            .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING, false)
                                .addComponent(jCursocbxCurso, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addComponent(jCursotxtfEmail)
                                .addComponent(jCursotxtfTelefono)
                                .addComponent(jCursotxtNombre, javax.swing.GroupLayout.DEFAULT_SIZE, 295, Short.MAX_VALUE)
                                .addComponent(jCursotxtPass, javax.swing.GroupLayout.Alignment.TRAILING))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                            .addComponent(jLblAclaracion))
                        .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jCursospnlLayout.createSequentialGroup()
                            .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addGroup(jCursospnlLayout.createSequentialGroup()
                                    .addComponent(jCursoBtnBuscar)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                                    .addComponent(jCursoBtnLimpiar))
                                .addComponent(jCursoVerLista, javax.swing.GroupLayout.PREFERRED_SIZE, 101, javax.swing.GroupLayout.PREFERRED_SIZE))
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                            .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                                .addComponent(jCursoBtnModificar, javax.swing.GroupLayout.PREFERRED_SIZE, 140, javax.swing.GroupLayout.PREFERRED_SIZE)
                                .addGroup(jCursospnlLayout.createSequentialGroup()
                                    .addComponent(jCursoBtnEleminar)
                                    .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                                    .addComponent(jCursoBtnGuardar)))
                            .addGap(506, 506, 506))))
                .addGap(399, 399, 399))
        );
        jCursospnlLayout.setVerticalGroup(
            jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, jCursospnlLayout.createSequentialGroup()
                .addGap(40, 40, 40)
                .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCursotxtNombre, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCursolblNombre)
                    .addComponent(jLblAclaracion))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCursocbxCurso, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCursolblCurso))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCursotxtfTelefono, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCursolblTelefono))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCursotxtfEmail, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCursolblEmail))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCursotxtPass, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCursoLblPass))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED)
                .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCursoCmbPrivilegios, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jCursoLblPrivilegios))
                .addGap(34, 34, 34)
                .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCursoBtnBuscar)
                    .addComponent(jCursoBtnLimpiar)
                    .addComponent(jCursoBtnEleminar)
                    .addComponent(jCursoBtnGuardar))
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addGroup(jCursospnlLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jCursoBtnModificar)
                    .addComponent(jCursoVerLista))
                .addContainerGap())
        );

        javax.swing.GroupLayout jPnlCursosLayout = new javax.swing.GroupLayout(jPnlCursos);
        jPnlCursos.setLayout(jPnlCursosLayout);
        jPnlCursosLayout.setHorizontalGroup(
            jPnlCursosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPnlCursosLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jCursospnl, javax.swing.GroupLayout.PREFERRED_SIZE, 527, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(18, Short.MAX_VALUE))
        );
        jPnlCursosLayout.setVerticalGroup(
            jPnlCursosLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPnlCursosLayout.createSequentialGroup()
                .addContainerGap()
                .addComponent(jCursospnl, javax.swing.GroupLayout.PREFERRED_SIZE, 356, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addContainerGap(javax.swing.GroupLayout.DEFAULT_SIZE, Short.MAX_VALUE))
        );

        jElectroInventario.addTab("Cursos", jPnlCursos);

        jCompCmbItem.setModel(new javax.swing.DefaultComboBoxModel(new String[] { "Seleccionar", "Bibliografía", "Componentes", "Equipos" }));

        jCompVerStock.setText("Ver Stock");
        jCompVerStock.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCompVerStockActionPerformed(evt);
            }
        });

        jCompAgregar.setText("Agregar Componentes");
        jCompAgregar.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCompAgregarActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout jPnlCompLayout = new javax.swing.GroupLayout(jPnlComp);
        jPnlComp.setLayout(jPnlCompLayout);
        jPnlCompLayout.setHorizontalGroup(
            jPnlCompLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPnlCompLayout.createSequentialGroup()
                .addGap(129, 129, 129)
                .addGroup(jPnlCompLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPnlCompLayout.createSequentialGroup()
                        .addComponent(jCompVerStock)
                        .addGap(18, 18, 18)
                        .addComponent(jCompAgregar))
                    .addComponent(jCompCmbItem, javax.swing.GroupLayout.PREFERRED_SIZE, 221, javax.swing.GroupLayout.PREFERRED_SIZE))
                .addContainerGap(160, Short.MAX_VALUE))
        );
        jPnlCompLayout.setVerticalGroup(
            jPnlCompLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPnlCompLayout.createSequentialGroup()
                .addGap(42, 42, 42)
                .addComponent(jCompCmbItem, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                .addGap(96, 96, 96)
                .addGroup(jPnlCompLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.BASELINE)
                    .addComponent(jCompVerStock)
                    .addComponent(jCompAgregar))
                .addContainerGap(178, Short.MAX_VALUE))
        );

        jElectroInventario.addTab("Componentes", jPnlComp);

        jConfigLblPersonas.setText("Personas:");

        jConfigBtnPersonas.setText("Buscar");
        jConfigBtnPersonas.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jConfigBtnPersonasActionPerformed(evt);
            }
        });

        jConfigLblComponentes.setText("Componentes:");

        jConifgBtnComponentes.setText("Buscar");
        jConifgBtnComponentes.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jConifgBtnComponentesActionPerformed(evt);
            }
        });

        jConfigLblPrestamos.setText("Prestamos:");

        jConfigBtnPrestamos.setText("Buscar");
        jConfigBtnPrestamos.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jConfigBtnPrestamosActionPerformed(evt);
            }
        });

        jConfigTxtPersonas.setColumns(20);
        jConfigTxtPersonas.setEditable(false);
        jConfigTxtPersonas.setRows(5);
        jConfScrollPersonas.setViewportView(jConfigTxtPersonas);

        jConfigTxtComponentes.setColumns(20);
        jConfigTxtComponentes.setEditable(false);
        jConfigTxtComponentes.setRows(5);
        jConfigScrollComponentes.setViewportView(jConfigTxtComponentes);

        jConfigTxtPrestamos.setColumns(20);
        jConfigTxtPrestamos.setEditable(false);
        jConfigTxtPrestamos.setRows(5);
        jConfigScrollPrestamos.setViewportView(jConfigTxtPrestamos);

        javax.swing.GroupLayout jPnlConfigLayout = new javax.swing.GroupLayout(jPnlConfig);
        jPnlConfig.setLayout(jPnlConfigLayout);
        jPnlConfigLayout.setHorizontalGroup(
            jPnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPnlConfigLayout.createSequentialGroup()
                .addContainerGap()
                .addGroup(jPnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jConfigLblPrestamos)
                    .addComponent(jConfigLblComponentes)
                    .addComponent(jConfigLblPersonas))
                .addGap(18, 18, 18)
                .addGroup(jPnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPnlConfigLayout.createSequentialGroup()
                        .addComponent(jConfScrollPersonas, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE)
                        .addGap(18, 18, 18)
                        .addComponent(jConfigBtnPersonas))
                    .addGroup(jPnlConfigLayout.createSequentialGroup()
                        .addGroup(jPnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                            .addComponent(jConfigScrollPrestamos, javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jConfigScrollComponentes, javax.swing.GroupLayout.Alignment.LEADING, javax.swing.GroupLayout.PREFERRED_SIZE, javax.swing.GroupLayout.DEFAULT_SIZE, javax.swing.GroupLayout.PREFERRED_SIZE))
                        .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.UNRELATED, 18, Short.MAX_VALUE)
                        .addGroup(jPnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jConfigBtnPrestamos)
                            .addComponent(jConifgBtnComponentes))))
                .addGap(84, 84, 84))
        );
        jPnlConfigLayout.setVerticalGroup(
            jPnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(jPnlConfigLayout.createSequentialGroup()
                .addGap(38, 38, 38)
                .addGroup(jPnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(jPnlConfigLayout.createSequentialGroup()
                        .addGap(36, 36, 36)
                        .addComponent(jConfigLblPersonas))
                    .addGroup(jPnlConfigLayout.createSequentialGroup()
                        .addGap(26, 26, 26)
                        .addGroup(jPnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                            .addComponent(jConfScrollPersonas, javax.swing.GroupLayout.PREFERRED_SIZE, 42, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addComponent(jConfigBtnPersonas))))
                .addGap(18, 18, 18)
                .addGroup(jPnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.TRAILING)
                    .addComponent(jConfigLblComponentes)
                    .addComponent(jConfigScrollComponentes, javax.swing.GroupLayout.PREFERRED_SIZE, 36, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jConifgBtnComponentes))
                .addGap(18, 18, 18)
                .addGroup(jPnlConfigLayout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jConfigLblPrestamos)
                    .addComponent(jConfigScrollPrestamos, javax.swing.GroupLayout.PREFERRED_SIZE, 41, javax.swing.GroupLayout.PREFERRED_SIZE)
                    .addComponent(jConfigBtnPrestamos))
                .addGap(161, 161, 161))
        );

        jElectroInventario.addTab("Configuración", jPnlConfig);

        jCerrarLbl.setText("Cerrar");
        jCerrarLbl.addMouseListener(new java.awt.event.MouseAdapter() {
            public void mouseClicked(java.awt.event.MouseEvent evt) {
                jCerrarLblMouseClicked(evt);
            }
            public void mouseExited(java.awt.event.MouseEvent evt) {
                jCerrarLblMouseExited(evt);
            }
            public void mouseEntered(java.awt.event.MouseEvent evt) {
                jCerrarLblMouseEntered(evt);
            }
        });

        jCreditosBtn.setText("Créditos");
        jCreditosBtn.addActionListener(new java.awt.event.ActionListener() {
            public void actionPerformed(java.awt.event.ActionEvent evt) {
                jCreditosBtnActionPerformed(evt);
            }
        });

        javax.swing.GroupLayout layout = new javax.swing.GroupLayout(getContentPane());
        getContentPane().setLayout(layout);
        layout.setHorizontalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(jElectroInventario, javax.swing.GroupLayout.PREFERRED_SIZE, 565, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addContainerGap())
                        .addGroup(layout.createSequentialGroup()
                            .addComponent(jIconoLbl, javax.swing.GroupLayout.PREFERRED_SIZE, 25, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addGap(31, 31, 31)
                            .addComponent(jUsuarioLbl, javax.swing.GroupLayout.PREFERRED_SIZE, 422, javax.swing.GroupLayout.PREFERRED_SIZE)
                            .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED, 29, Short.MAX_VALUE)
                            .addComponent(jCerrarLbl)
                            .addGap(25, 25, 25)))
                    .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                        .addComponent(jCreditosBtn)
                        .addContainerGap())))
        );
        layout.setVerticalGroup(
            layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
            .addGroup(javax.swing.GroupLayout.Alignment.TRAILING, layout.createSequentialGroup()
                .addContainerGap()
                .addGroup(layout.createParallelGroup(javax.swing.GroupLayout.Alignment.LEADING)
                    .addComponent(jUsuarioLbl, javax.swing.GroupLayout.DEFAULT_SIZE, 18, Short.MAX_VALUE)
                    .addComponent(jIconoLbl, javax.swing.GroupLayout.DEFAULT_SIZE, 18, Short.MAX_VALUE)
                    .addComponent(jCerrarLbl))
                .addGap(1, 1, 1)
                .addComponent(jCreditosBtn)
                .addPreferredGap(javax.swing.LayoutStyle.ComponentPlacement.RELATED)
                .addComponent(jElectroInventario, javax.swing.GroupLayout.DEFAULT_SIZE, 412, Short.MAX_VALUE)
                .addContainerGap())
        );

        pack();
    }// </editor-fold>//GEN-END:initComponents

    private void jEquipoBtnCargarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jEquipoBtnCargarActionPerformed
        //Si se presionó el botón de cargar datos:        
        //Creamos un objeto datos.
        Datos oDatos = new Datos();
        //Creamos un objeto equipos.
        Equipos oEquipo = new Equipos();
        if (jEquipoTxtNombre.getText().isEmpty() || jEquipoTxtAclar.getText().isEmpty() 
                || jEquipoTxtCod.getText().isEmpty() || jEquipoTxtDesc.getText().isEmpty() 
                || jEquipoTxtManual.getText().isEmpty() || jEquipoTxtStockA.getText().isEmpty()
                || jEquipoTxtStockD.getText().isEmpty() || jEquipoTxtUbManual.getText().isEmpty()
                || jEquipoTxtUbicacion.getText().isEmpty())
        {
            //Si falta algun dato a proporcionar:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Faltan datos, no se ha Grabado!", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        else
        {
            //Si se proporcionó un nombre:
            oEquipo.setsNombre(jEquipoTxtNombre.getText());//Setea el nombre del equipo.
            oEquipo.setsStock_deseado(jEquipoTxtStockD.getText());//Setea el stock que debería haber.
            oEquipo.setsStock_actual(jEquipoTxtStockA.getText());//Setea el stock actual del equipo.
            oEquipo.setsUbicacion(jEquipoTxtUbicacion.getText());//Setea la ubicación del equipo.
            oEquipo.setsAclaraciones(jEquipoTxtAclar.getText());//Setea las aclaraciones del equipo.
            oEquipo.setsCodigo(jEquipoTxtCod.getText());//Setea el código del equipo. 
            oEquipo.setsManuales(jEquipoTxtManual.getText());//Setea los manuales del equipo.
            oEquipo.setsUbicacion_manual(jEquipoTxtUbManual.getText());//Setea la ubicación del manual.
            oEquipo.setsDescripcion(jEquipoTxtDesc.getText());//Setea la descripción del equipo.     
            try {
                //Llama a la función getLastLegajo para setear el legajo del equipo.
                oEquipo.setsLeg(oDatos.getLastLegajo("Componentes.db", "equipos"));
                //Guardo en la base de datos el equipo ingresado.
                oDatos.setDatosEquipo(oEquipo);
            } catch (Exception ex) {}
            //Oculta la ventana de los Equipos.
            jFrameEquipos.setVisible(false);
            //Muestra un mensaje de aviso que todo se guardó correctamente.
            JOptionPane.showMessageDialog(this, "Los Datos se guardaron correctamente", "Cargado Correcto", JOptionPane.INFORMATION_MESSAGE);
        }
    }//GEN-LAST:event_jEquipoBtnCargarActionPerformed

    private void jEquipoBtnBuscarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jEquipoBtnBuscarActionPerformed
        //Cuando se presiona el botón de Buscar un Equipo:
        //Crea un objeto Datos para la conexión a la base de datos.
        Datos oDatos = new Datos();
        //Crea un objeto equipos para cargarle los datos a mostrar.
        Equipos oEquipo = new Equipos();
        //Si el casillero de nombre está vacío:  
        if (jEquipoTxtNombre.getText().length() < 1) {
            //Si no hay nada escrito en el nombre:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Proporcionar un Nombre para buscar", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        else {
            //Si hay un texto escrito en la casilla del nombre:
            try {
                //Asigna al objeto alumnos los datos de la base de datos.        
                oEquipo = oDatos.getDatosEquipos(jEquipoTxtNombre.getText());
            } catch (Exception ex) {}
            if (oEquipo.sStock_actual == null)
            {
                //Si no se encontró el equipo:
                JOptionPane.showMessageDialog(this, "Equipo no encontrado", "ERROR", JOptionPane.ERROR_MESSAGE);
            }
            else
            {
                jEquipoTxtStockD.setText(oEquipo.getsStock_deseado());//Setea el stock deseado en el casillero.
                jEquipoTxtStockA.setText(oEquipo.getsStock_actual());//Setea el stock actual en el casillero.
                jEquipoTxtUbicacion.setText(oEquipo.getsUbicacion());//Setea la ubicación del equipo en el casillero.
                jEquipoTxtAclar.setText(oEquipo.getsAclaraciones());//Setea las aclaraciones en el casillero.
                jEquipoTxtCod.setText(oEquipo.getsCodigo());//Setea el código en el casillero.
                jEquipoTxtManual.setText(oEquipo.getsManuales());//Setea los manuales en el casillero.   
                jEquipoTxtUbManual.setText(oEquipo.getsUbicacion_manual());//Setea la ubicación de los manuales en el casillero.         
                jEquipoTxtDesc.setText(oEquipo.getsDescripcion());//Setea la descripción en el casillero.
            }
        }
    }//GEN-LAST:event_jEquipoBtnBuscarActionPerformed

    private void jEquipoBtnModificarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jEquipoBtnModificarActionPerformed
        //Si se presionó el botón de modificar un equipo:
        //Crea un objeto Datos.
        Datos oDato = new Datos ();
        //Crea un objeto Equipos.
        Equipos oEquipo = new Equipos();
        if(jEquipoTxtNombre.getText().isEmpty())
        {
            //Si la casilla del nombre está vacía:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "No ha proporcionado un nombre, no se ha Actualizado!", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        else
        {
            //Si se proporcionó un nombre:
            oEquipo.setsNombre(jEquipoTxtNombre.getText());//Seteo el nombre del equipo.
            try {
                //Busco el equipo en la base de datos.
                oEquipo = oDato.getDatosEquipos(oEquipo.sNombre);
            } catch (Exception ex) {}
            if (oEquipo.sLeg == null)
            {
                //Si no existe el equipo:
                //Muestra un mensaje de error.
                JOptionPane.showMessageDialog(this, "Equipo no encontrado!", "ERROR", JOptionPane.ERROR_MESSAGE);
            }
            else
            {
                //Si se encontró un equipo:
                oEquipo.setsStock_deseado(jEquipoTxtStockD.getText());//Setea el stock que debería haber.
                oEquipo.setsStock_actual(jEquipoTxtStockA.getText());//Setea el stock actual del equipo.
                oEquipo.setsUbicacion(jEquipoTxtUbicacion.getText());//Setea la ubicación del equipo.
                oEquipo.setsAclaraciones(jEquipoTxtAclar.getText());//Setea las aclaraciones del equipo.
                oEquipo.setsCodigo(jEquipoTxtCod.getText());//Setea el código del equipo. 
                oEquipo.setsManuales(jEquipoTxtManual.getText());//Setea los manuales del equipo.
                oEquipo.setsUbicacion_manual(jEquipoTxtUbManual.getText());//Setea la ubicación del manual.
                oEquipo.setsDescripcion(jEquipoTxtDesc.getText());//Setea la descripción del equipo.
                try {
                    //Llama a la función updateDatosEquipo para realizar la actualización.
                    oDato.updateDatosEquipo(oEquipo);
                    //Muestra un mensaje de información que los datos se guardaron correctamente.
                    JOptionPane.showMessageDialog(this, "Datos actualizados correctamente!", "Grabado", JOptionPane.INFORMATION_MESSAGE);
                    } catch (Exception ex) {}
            }
        }
        //Llama a la función LimpiarEquipo para borrar todos los text files.
        LimpiarEquipo();
    }//GEN-LAST:event_jEquipoBtnModificarActionPerformed

    private void jEquipoBtnLimpiarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jEquipoBtnLimpiarActionPerformed
        //Si se presionó el el botón limpiar se  vacian todos los casilleros:
        //Llama a la función LimpiarEquipo para borrar todos los text files.
        LimpiarEquipo();
    }//GEN-LAST:event_jEquipoBtnLimpiarActionPerformed

    private void jEquipoBtnEliminarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jEquipoBtnEliminarActionPerformed
        //Si se presionó este botón eliminar equipo:
        //Crea un objeto Datos para la conexión de la base de datos.
        Datos oDatos = new Datos();
        //Crea un objeto Equipos para cargar los datos en pantalla.
        Equipos oEquipo = new Equipos();
        if (jEquipoTxtNombre.getText().length() < 1) {
            //Si no hay nada escrito en el nombre:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Proporcionar un Nombre para buscar", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        else {
            //Si hay escrito un nombre:
            try {
                //Asigna los atributos de la base de datos al objeto Equipos.
                oEquipo = oDatos.getDatosEquipos(jEquipoTxtNombre.getText());
                } catch (Exception ex) {}
            if (oEquipo.sLeg == null)
            {
                //Si el equipo no existe:
                //Muestra un mensaje de error.
                JOptionPane.showMessageDialog(this, "Equipo no encontrado", "ERROR", JOptionPane.ERROR_MESSAGE);
            }
            else
            {
                //Si el Equipo no existe:
                //Muestra un mensaje de advertencia que los datos serán borrados.
                int i = JOptionPane.showConfirmDialog(this, "Esta seguro que quiere eliminar a " 
                        + oEquipo.getsNombre(), "Atención", JOptionPane.YES_NO_OPTION);           
                if (i == 0) 
                {
                    //Si la respuesta fue afirmativa:
                    try {
                        //Llama a la función delDatos para borrar el equipo.
                        oDatos.DelDato("Componentes.db", "equipos", oEquipo.sNombre);
                        //Muestra un mensaje de correcto borrado.
                        JOptionPane.showMessageDialog(this, "Datos borrados correctamente!", "Borrado", JOptionPane.INFORMATION_MESSAGE);
                    } catch (Exception ex) {}
                }
            }
        //Llama a la función LimpiarEquipo para borrar todos los text files.
        LimpiarEquipo();
        }
    }//GEN-LAST:event_jEquipoBtnEliminarActionPerformed

    private void jCompBtnCargarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCompBtnCargarActionPerformed
        //Si se presionó el botón de cargar datos:        
        //Creamos un objeto Datos.
        Datos oDatos = new Datos();
        //Creamos un objeto Componentes.
        Componentes oComponentes = new Componentes();
        if (jCompTxtAclar.getText().isEmpty() || jCompTxtEncapsulado.getText().isEmpty()
                ||jCompTxtNombre.getText().isEmpty() || jCompTxtPotencia.getText().isEmpty()
                || jCompTxtStockA.getText().isEmpty() || jCompTxtStockD.getText().isEmpty()
                || jCompTxtTension.getText().isEmpty() || jCompTxtUbicacion.getText().isEmpty()
                || jCompTxtValor.getText().isEmpty() || jCompCmbCategoria.getSelectedItem().equals("Seleccionar")
                || jCompCmbSubcategoria.getSelectedItem().equals("Seleccionar"))
        {
            //Si falta algún dato:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Faltan datos!", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        else
        {
            //Si están todos los datos:
            oComponentes.setsNombre(jCompTxtNombre.getText());//Setea el nombre del componente.
            oComponentes.setsStock_deseado(jCompTxtStockD.getText());//Setea el stock que debería haber.
            oComponentes.setsStock_actual(jCompTxtStockA.getText());//Setea el stock actual del componente.
            oComponentes.setsUbicacion(jCompTxtUbicacion.getText());//Setea la ubicación del componente.
            oComponentes.setsAclaraciones(jCompTxtAclar.getText());//Setea las aclaraciones del componente.
            oComponentes.setsCategoria((String)jCompCmbCategoria.getSelectedItem());//Setea la categoria del componente. 
            oComponentes.setsSubcategoria((String)jCompCmbSubcategoria.getSelectedItem());//Setea la subcategoria del componente.
            oComponentes.setsValor(jCompTxtValor.getText());//Setea el valor del componente.
            oComponentes.setsEncapsulado(jCompTxtEncapsulado.getText());//Setea el encapsulado del componente.
            oComponentes.setsTension(jCompTxtTension.getText());//Setea la tensión del componente.
            oComponentes.setsPotencia(jCompTxtPotencia.getText());//Setea la potencia del componente.
            try {
                //Llama a la función getLastLegajo para setear el legajo del componente.
                oComponentes.setsLeg(oDatos.getLastLegajo("Componentes.db", "Componentes"));//Setea el legajo del componente.
                //Guardo en la base de datos el equipo ingresado.
                oDatos.setDatosComponentes(oComponentes);
            } catch (Exception ex) {}
            //Oculta la ventana de los Componentes.
            jFrameComponentes.setVisible(false);
            //Muestra un mensaje de aviso que todo se guardó correctamente.
            JOptionPane.showMessageDialog(this, "Los Datos se guardaron correctamente", "Cargado Correcto", JOptionPane.INFORMATION_MESSAGE);
            //Llama a la función LimpiarComponentes.
            LimpiarComponentes();
        }

    }//GEN-LAST:event_jCompBtnCargarActionPerformed

    private void jCompBtnBuscarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCompBtnBuscarActionPerformed
        //Cuando se presiona el botón de Buscar un Componente:
        //Crea un objeto Datos para la conexión a la base de datos.
        Datos oDatos = new Datos();
        //Crea un objeto componentes.
        Componentes oComponentes = new Componentes();
        //Si el casillero de nombre está vacío:  
        if (jCompTxtNombre.getText().length() < 1) {
            //Si no hay nada escrito en el nombre:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Proporcionar un Nombre para buscar", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        else {
            //Si hay un texto escrito en la casilla del nombre:
            try {
                //Asigna al objeto alumnos los datos de la base de datos.        
                oComponentes = oDatos.getDatosComponentes(jCompTxtNombre.getText());  
            } catch (Exception ex) {}
            if (oComponentes.sLeg == null)
            {
                //Si el componente no existe:
                JOptionPane.showMessageDialog(this, "Componente no encontrado!", "ERROR", JOptionPane.ERROR_MESSAGE);
                //Llama a la función LimpiarComponentes.
                LimpiarComponentes();
            }
            else
            {
                jCompTxtStockD.setText(oComponentes.getsStock_deseado());//Setea el stock deseado en el casillero.
                jCompTxtStockA.setText(oComponentes.getsStock_actual());//Setea el stock actual en el casillero.
                jCompTxtUbicacion.setText(oComponentes.getsUbicacion());//Setea la ubicación del equipo en el casillero.
                jCompTxtAclar.setText(oComponentes.getsAclaraciones());//Setea las aclaraciones en el casillero.
                jCompTxtValor.setText(oComponentes.getsValor());//Setea el valor en el casillero.
                jCompTxtTension.setText(oComponentes.getsTension());//Setea la tensión en el casillero.   
                jCompTxtPotencia.setText(oComponentes.getsPotencia());//Setea la potencia en el casillero.         
                jCompTxtEncapsulado.setText(oComponentes.getsEncapsulado());//Setea el encapsulado en el casillero.
                jCompCmbCategoria.setSelectedItem(oComponentes.sCategoria);//Setea la categoría.
                jCompCmbSubcategoria.setSelectedItem(oComponentes.sSubcategoria);//Setea la subcategoría 
            }
        }
    }//GEN-LAST:event_jCompBtnBuscarActionPerformed

    private void jCompBtnEliminarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCompBtnEliminarActionPerformed
        //Si se presionó este botón eliminar componentes:
        //Crea un objeto Datos para la conexión de la base de datos.
        Datos oDatos = new Datos();
        //Crea un objeto Componentes para cargar los datos en pantalla.
        Componentes oComponentes = new Componentes();
        //Si el casillero del nombre está vacío:
        if (jCompTxtNombre.getText().length() < 1) {
            //Si no hay nada escrito en el nombre:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Proporcionar un Nombre para buscar", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        else{
            //Si hay escrito un nombre:
            try {
                //Asigna los atributos de la base de datos al objeto Componentes.
                oComponentes = oDatos.getDatosComponentes(jCompTxtNombre.getText());
                } catch (Exception ex) {}
            if (oComponentes.sLeg == null)
            {
                //Si no existe el componente:
                JOptionPane.showMessageDialog(this, "Componente no encontrado", "ERROR", JOptionPane.ERROR_MESSAGE);
            }
            else
            {
                //Si existe el componente:
                //Muestra un mensaje de advertencia que los datos serán borrados.
                int i = JOptionPane.showConfirmDialog(this, "Esta seguro que quiere eliminar a " 
                        + oComponentes.getsNombre(), "Atención", JOptionPane.YES_NO_OPTION);
                //Si la respuesta fue afirmativa:
                if (i == 0) {
                    try {
                        //Llama a la función delDatos para borrar el componente.
                        oDatos.DelDato("Componentes.db", "componentes", oComponentes.sNombre);    
                        //Muestra un mensaje de correcto borrado.
                        JOptionPane.showMessageDialog(this, "Datos borrados correctamente!", "Borrado", JOptionPane.INFORMATION_MESSAGE);
                    }catch (Exception ex) {}
                }
            }
        }
        //Llama a la función LimpiarComponentes para borrar todos los text files.
        LimpiarComponentes();
    }//GEN-LAST:event_jCompBtnEliminarActionPerformed

    private void jCompBtnLimpiarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCompBtnLimpiarActionPerformed
        //Si se presióno el botón de limpiar la ventana componentes:
        //Llama a la función LimpiarComponentes para borrar todos los text files.
        LimpiarComponentes();
    }//GEN-LAST:event_jCompBtnLimpiarActionPerformed

    private void jCompBtnModificarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCompBtnModificarActionPerformed
        //Si se presionó el botón de modificar un componente:
        //Crea un objeto Datos.
        Datos oDato = new Datos ();
        //Crea un objeto Componentes.
        Componentes oComponentes = new Componentes();
        oComponentes.setsNombre(jCompTxtNombre.getText());//Setea el Nombre del componente.
        if(oComponentes.sNombre.isEmpty())
        {
            //Si la casilla del nombre está vacía:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "No ha proporcionado un Nombre, no se ha Actualizado!", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        else
        {
            //Si se proporcionó un legajo: 
            try {
                //Llama a la función getDatosComponentes para setear los datos.
                oComponentes = oDato.getDatosComponentes(oComponentes.sNombre);
            } catch (Exception ex) {}
            if (oComponentes.sLeg == null)
            {
                //Si el componente no existe:
                //Muestra un mensaje de error.
                JOptionPane.showMessageDialog(this, "Componente no encontrado!", "ERROR", JOptionPane.ERROR_MESSAGE);
            }
            else
            {
                //Si el componente existe:
                oComponentes.setsNombre(jCompTxtNombre.getText());//Setea el nombre del componente.
                oComponentes.setsStock_deseado(jCompTxtStockD.getText());//Setea el stock que debería haber.
                oComponentes.setsStock_actual(jCompTxtStockA.getText());//Setea el stock actual del componente.
                oComponentes.setsUbicacion(jCompTxtUbicacion.getText());//Setea la ubicación del componente.
                oComponentes.setsAclaraciones(jCompTxtAclar.getText());//Setea las aclaraciones del componente.
                oComponentes.setsCategoria((String)jCompCmbCategoria.getSelectedItem());//Setea la categoria del componente. 
                oComponentes.setsSubcategoria((String)jCompCmbSubcategoria.getSelectedItem());//Setea la subcategoria del componente.
                oComponentes.setsValor(jCompTxtValor.getText());//Setea el valor del componente.
                oComponentes.setsEncapsulado(jCompTxtEncapsulado.getText());//Setea el encapsulado del componente.
                oComponentes.setsTension(jCompTxtTension.getText());//Setea la tensión del componente.
                oComponentes.setsPotencia(jCompTxtPotencia.getText());//Setea la potencia del componente.
                try {
                    //Llama a la función updateDatosComponentes para realizar la actualización.
                    oDato.updateDatosComponentes(oComponentes);
                    //Muestra un mensaje de información que los datos se guardaron correctamente.
                    JOptionPane.showMessageDialog(this, "Datos actualizados correctamente!", "Grabado", JOptionPane.INFORMATION_MESSAGE);
                } catch (Exception ex) {}
            }
            //Llama a la función LimpiarComponentes para borrar todos los text files.
            LimpiarComponentes();
        }
    }//GEN-LAST:event_jCompBtnModificarActionPerformed

    private void jInformeBtnImprimirActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jInformeBtnImprimirActionPerformed
        //Si se presionó el botón de imprimir de la ventana informes:
        //Crea un objeto para realizar las impresiones.
        DocumentRenderer oPrint = new DocumentRenderer();
        //Setea el text file de informe para mandarlo a imprimir.
        oPrint.setDocument(jtxtInforme);
        //Muestra la ventana de configuración de impresión.
        oPrint.printDialog();
    }//GEN-LAST:event_jInformeBtnImprimirActionPerformed

    private void jCompAgregarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCompAgregarActionPerformed
        //Si se presionó el botón de agregar componentes:
        if (jCompCmbItem.getSelectedItem().equals("Seleccionar")){
            //Si no se selecciono nada:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Seleccione el tipo de elemento.", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        if (jCompCmbItem.getSelectedItem().equals("Equipos")){
            //Si se seleccionó equipos:
            //Llama a la función cEquipo para borrar todos los text files.
            LimpiarEquipo();
            //Se hace visible la ventana equipos.
            jFrameEquipos.setVisible(true);
            //Se establece la posición de la ventana.
            jFrameEquipos.setLocationRelativeTo(this);     
        }
        if (jCompCmbItem.getSelectedItem().equals("Bibliografía")){
            //Si se seleccionó Bibliografía:
            //Llama la función LimpiarBibliografia para borrar todos los text files.
            LimpiarBibliografia();
            //Se hace visible la ventana Bibliografía.
            jFrameBibliografia.setVisible(true);
            //Se establece la posición de la ventana.
            jFrameBibliografia.setLocationRelativeTo(this);
            
        }
        if (jCompCmbItem.getSelectedItem().equals("Componentes")){
            //Si se seleccionó equipos:
            //Llama a la función LimpiarComponentes para borrar todos los text files.
            LimpiarComponentes();
            //Se hace visible la ventana equipos.
            jFrameComponentes.setVisible(true);
            //Se establece la posición de la ventana.
            jFrameComponentes.setLocationRelativeTo(this);
        }
}//GEN-LAST:event_jCompAgregarActionPerformed

    private void jCompVerStockActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCompVerStockActionPerformed
        //Si sepresiona este botón:
        if (jCompCmbItem.getSelectedItem().equals("Seleccionar")){
            //Si no se selecciono nada:
            JOptionPane.showMessageDialog(this, "Seleccione el tipo de elemento.", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        if (jCompCmbItem.getSelectedItem().equals("Equipos")){
            //Si se seleccionó equipos:
            //Setea el tamaño de una ventana
            jFrameInformes.setSize(950, 500);
            //Setea la ventana al centro de la pantalla.
            jFrameInformes.setLocationRelativeTo(this);
            //Hace la ventana visible.
            jFrameInformes.setVisible(true);
            //Crea un objeto datos.
            Datos oDatos = new Datos();
            try {
                //Setea el texto del campo de texto con los datos que la base de
                //datos le entregue.
                jtxtInforme.setText(oDatos.DatosEquipotoHtml());
            } catch (Exception ex) {
            }
        }
        if (jCompCmbItem.getSelectedItem().equals("Bibliografía")){
            //Si se seleccionó Bibliografía:
            //Setea el tamaño de una ventana
            jFrameInformes.setSize(950, 500);
            //Setea la ventana al centro de la pantalla.
            jFrameInformes.setLocationRelativeTo(this);
            //Hace la ventana visible.
            jFrameInformes.setVisible(true);
            //Crea un objeto datos.
            Datos oDatos = new Datos();
            try {
                //Setea el texto del campo de texto con los datos que la base de
                //datos le entregue.
                jtxtInforme.setText(oDatos.DatosBibliografiatoHtml());
            } catch (Exception ex) {
            }
        }
        if (jCompCmbItem.getSelectedItem().equals("Componentes")){
            //Si se seleccionó Componentes:
            //Setea el tamaño de una ventana
            jFrameInformes.setSize(1000, 500);
            //Setea la ventana al centro de la pantalla.
            jFrameInformes.setLocationRelativeTo(this);
            //Hace la ventana visible.
            jFrameInformes.setVisible(true);        
            //Crea un objeto datos.
            Datos oDatos = new Datos();
            try {
                //Setea el texto del campo de texto con los datos que la base de
                //datos le entregue.
                jtxtInforme.setText(oDatos.DatosComponentesToHtml());
            } catch (Exception ex) {
            }
        }
}//GEN-LAST:event_jCompVerStockActionPerformed

    private void jCursoBtnModificarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCursoBtnModificarActionPerformed
        //Si se presionó el botón de modificar un alumno:
        //Crea un objeto Datos.
        Datos oDato = new Datos();
        //Crea un objeto Persona.
        Persona oAlumno = new Persona();
        //Busca los datos por el nombre del alumno ingresado.   
        try {
             oAlumno = oDato.getDatosPersona(jCursotxtNombre.getText());
        } catch (Exception ex) {
        }
        if (oAlumno.sEmail == null)
        {
            //Si la persona no existe, entonces no tiene un email.
            JOptionPane.showMessageDialog(this, "Alumno no Encontrado!", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        else
        {
            //Si el alumno fue encontrado:
            //Muestra un mensaje de opción para asegurar el cambio de datos.
            int i = JOptionPane.showConfirmDialog(this, "Esta seguro que quiere modificar a " + oAlumno.getsNombre(), "Atención", JOptionPane.YES_NO_OPTION);
            if (i == 0)
            {
            oAlumno.setsNombre(jCursotxtNombre.getText());//Setea el nombre en el objeto.
            oAlumno.setsEmail(jCursotxtfEmail.getText());//Setea el email en el objeto.
            oAlumno.setsTelefono(jCursotxtfTelefono.getText());//Setea el telefono en el objeto.
            oAlumno.setsPass(new String(jCursotxtPass.getPassword()));//Setea el password.
            oAlumno.setsPrivilegios((String)jCursoCmbPrivilegios.getSelectedItem());
            oAlumno.setsCurso((String) jCursocbxCurso.getSelectedItem());//Setea el curso en el objeto.
            //Muestra un mensaje de información que los datos se guardaron correctamente.
            JOptionPane.showMessageDialog(this, "Datos actualizados correctamente!", "Grabado", JOptionPane.INFORMATION_MESSAGE);
            //Creo un objeto email para realizar el envío de los datos.
            Varias oMail = new Varias();
            //Setea el sujeto del email.
            String sAsunto = ("ITS Villada - Laboratorio"
                    + " de Electronica Industrial");
            //Setea el cuerpo de mensaje del email.
            String sMensaje = ("Sus datos han sido modificados! \n "
                    + ". Por favor revisar los nuevos datos ingresados:"
                    + "\n Nombre: " +oAlumno.sNombre
                    + "\n Curso: " +oAlumno.sCurso
                    + "\n Teléfono: " +oAlumno.sTelefono
                    + "\n Legajo: " +oAlumno.sLegajo);
            //Llama a la función EnviarMail para enviar los datos actualizados.
            oMail.EnviarMail(oAlumno.sEmail, sMensaje, sAsunto);
            }
        }
        LimpiarCursos();
}//GEN-LAST:event_jCursoBtnModificarActionPerformed

    private void jCursoVerListaActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCursoVerListaActionPerformed
        // Si el botón de Ver Lista Completa se presionó:
        //Setea el tamaño de una ventana
        jFrameInformes.setSize(950, 500);
        //Hace la ventana visible.
        jFrameInformes.setVisible(true);
        //Centra la ventana en la pantalla.
        jFrameInformes.setLocationRelativeTo(this);
        //Crea un objeto datos.
        Datos oDatos = new Datos();
        try {
            //Setea el texto del campo de texto con los datos que la base de
            //datos le entregue.
            jtxtInforme.setText(oDatos.DatosPersonatoHtml());
        } catch (Exception ex) {
        }
}//GEN-LAST:event_jCursoVerListaActionPerformed

    private void jCursoBtnEleminarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCursoBtnEleminarActionPerformed
        //Si el botón eliminar se ha presionado:
        //Crea un objeto Datos para la conexión de la base de datos.
        Datos oDatos = new Datos();
        //Crea un objeto persona para cargar los datos en pantalla.
        Persona oAlumno = new Persona();
        //Si el casillero del nombre está vacío:
        if (jCursotxtNombre.getText().length() < 1) {
            //Si no hay nada escrito en el nombre:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Proporcionar un Nombre para eliminar", "ERROR", JOptionPane.ERROR_MESSAGE);
        } else{
            try {
                //Asigna los atributos de la base de datos al objeto alumno.
                oAlumno = oDatos.getDatosPersona(jCursotxtNombre.getText());
                if (oAlumno.sNombre == null)
                {
                    JOptionPane.showMessageDialog(this, "La persona no existe", "ERROR", JOptionPane.ERROR_MESSAGE);
                }
                else{
                //Muestra un mensaje de advertencia que los datos serán borrados.
                int i = JOptionPane.showConfirmDialog(this, "Esta seguro que quiere eliminar a " + oAlumno.getsNombre(), "Atención", JOptionPane.YES_NO_OPTION);
                //Si la respuesta fue afirmativa:
                if (i == 0) {
                    //Llama a la función delDatosPersona para borrar toda la
                    //información con el nombre asignado.
                    oDatos.DelDato("Personas.db", "Persona", jCursotxtNombre.getText());
                    //Muestra un mensaje de correcto borrado.
                    JOptionPane.showMessageDialog(this, "Datos borrados correctamente!", "Borrado", JOptionPane.INFORMATION_MESSAGE);            
                    }
                }
            }catch (Exception ex) {
            }
        }
        //Llama a la función LimpiarCursos.
        LimpiarCursos();
}//GEN-LAST:event_jCursoBtnEleminarActionPerformed

    private void jCursoBtnLimpiarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCursoBtnLimpiarActionPerformed
        //Llama a la función LimpiarCursos.
        LimpiarCursos();
}//GEN-LAST:event_jCursoBtnLimpiarActionPerformed

    private void jCursoBtnBuscarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCursoBtnBuscarActionPerformed
        //Si se presionó el botón de Buscar:
        //Crea un objeto Datos para la conexión a la base de datos.
        Datos oDatos = new Datos();
        //Crea un objeto alumno para cargarle los datos a mostrar.
        Persona oAlumno = new Persona();
        //Si el casillero de nombre está vacío:
        if (jCursotxtNombre.getText().length() < 1) {
            //Si no hay nada escrito en el nombre:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Proporcionar un Nombre para buscar", "ERROR", JOptionPane.ERROR_MESSAGE);
        } 
        else {
            try {
                //Asigna al objeto alumnos los datos de la base de datos.
                oAlumno = oDatos.getDatosPersona(jCursotxtNombre.getText());
            } catch (Exception e) {
            }
            if(oAlumno.sEmail == null) {
                //Si la persona no se encontró, entonces, el email es cero:
                //Llama a la función LimpiarCursos.
                LimpiarCursos();
                //Muestra un mensaje de error.
                JOptionPane.showMessageDialog(this, "Alumno no encontrado", "ERROR", JOptionPane.ERROR_MESSAGE);
            }
            else{
                //Si se encontró la persona:
                jCursotxtfEmail.setText(oAlumno.getsEmail());//Setea el teléfono en el casillero.
                jCursotxtfTelefono.setText(oAlumno.getsTelefono());//Setea el email en el casillero.
                jCursocbxCurso.setSelectedItem(oAlumno.getsCurso());//Setea el curso en el casillero.
                jCursoCmbPrivilegios.setSelectedItem(oAlumno.getsPrivilegios());//Setea el curso en el casillero.
            }
        }
}//GEN-LAST:event_jCursoBtnBuscarActionPerformed

    private void jCursoBtnGuardarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCursoBtnGuardarActionPerformed
        //Cuando se presionó el botón de guardar alumnos:
        //Se crea un objeto Datos para la conexión de base de datos.
        Datos oDatos = new Datos();
        //Se crea un objeto alumno para obtener los datos ingresados.
        Persona oAlumno = new Persona();
        oAlumno.setsNombre(jCursotxtNombre.getText());//Setea su nombre.
        oAlumno.setsCurso((String) jCursocbxCurso.getSelectedItem());//Setea su curso.
        oAlumno.setsTelefono(jCursotxtfTelefono.getText());//Setea su teléfono.
        oAlumno.setsEmail(jCursotxtfEmail.getText());//Setea su email.
        oAlumno.setsPass(new String(jCursotxtPass.getPassword()));//Setea el password.
        oAlumno.setsPrivilegios((String)jCursoCmbPrivilegios.getSelectedItem());//Setea los privilegios.
        //Revisa si se escribieron los datos necesarios, de lo contrario arroja un error.
        if (oAlumno.sNombre == null || oAlumno.sEmail == null || oAlumno.sTelefono == null || oAlumno.sPass == null || oAlumno.sCurso.equals("Seleccionar") || oAlumno.sPrivilegios.equals("Seleccionar")) {
            //Si faltan datos:
            JOptionPane.showMessageDialog(this, "Faltan datos para el ingreso. \n No se ha Grabado!", "ERROR", JOptionPane.ERROR_MESSAGE);
        } 
        else {
            //Si están todos los datos.
            try {
                //Llama al método GetLastLegajo para setear el legajo de la persona
                oAlumno.setsLegajo(oDatos.getLastLegajo("Personas.db","persona"));
                //Llama al método setDatosPersona y le envía los datos que deben ser
                //guardados.
                oDatos.setDatosPersona(oAlumno);
                //Muestra un mensaje de información.
                JOptionPane.showMessageDialog(this, "Datos grabados correctamente!\n Revise"
                        + " su correo electrónico para verificar sus datos", "Grabado - " + oAlumno.getsNombre(), JOptionPane.INFORMATION_MESSAGE);
                String sMensaje = ("Felicitaciones! \n "
                            + "Se ha registrado al laboratorio de electronica"
                            + ". Por favor revisar los siguientes datos:"
                            + "\n Nombre: " +oAlumno.sNombre
                            + "\n Curso: " +oAlumno.sCurso
                            + "\n Contraseña: " +oAlumno.sPass
                            + "\n Teléfono: " +oAlumno.sTelefono
                            + "\n Legajo: " +oAlumno.sLegajo);
                String sAsunto = ("ITS Villada - Laboratorio"
                            + " de Electronica Industrial");
                //Creo un objeto email para realizar el envío de los datos.
                Varias oMail = new Varias();
                oMail.EnviarMail(oAlumno.sEmail, sMensaje, sAsunto);
            } catch (Exception ex) {
                //Si no se pudieron cargar los datos en la base de datos:
                JOptionPane.showMessageDialog(this, "No se ha grabado correctamente!", "ERROR", JOptionPane.ERROR_MESSAGE);
            }
            //Llama a la función LimpiarCursos.
            LimpiarCursos();
        }
}//GEN-LAST:event_jCursoBtnGuardarActionPerformed

    private void jPrestamosBtnVerActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jPrestamosBtnVerActionPerformed
        // Cuando se tocó el botón de Ver Lista de los Prestamos:
        if (jPrestamosCmbOrdenar.getSelectedItem().equals("Seleccionar"))
        {
            //Si no se seleccionó un orden de la lista de los préstamos:
            JOptionPane.showMessageDialog(this, "Debe seleccionar un orden para "
                    + "mostrar la lista!", "ERROR", JOptionPane.INFORMATION_MESSAGE);
        }
        else
        {
            //Si se seleccionó un orden de lista:
            //Setea el tamaño de una ventana
            jFrameInformes.setSize(950, 500);
            //Setea la ventana al centro de la pantalla.
            jFrameInformes.setLocationRelativeTo(this);
            //Hace la ventana visible.
            jFrameInformes.setVisible(true);
            //Crea un objeto datos.
            Datos oDatos = new Datos();
            try {
                //Setea el texto del campo de texto con los datos que la base de
                //datos le entregue.
                jtxtInforme.setText(oDatos.DatosPrestamostoHtml(jPrestamosCmbOrdenar.getSelectedItem().toString()));
            } catch (Exception ex) {}
        } 
}//GEN-LAST:event_jPrestamosBtnVerActionPerformed

    private void jPrestamosBtnCargarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jPrestamosBtnCargarActionPerformed
        //Si se presionó el botón de cargar un préstamo:
        if (jPrestamoscmbNombre.getSelectedItem().equals("Seleccionar")) {
            //Si se seleccionó Seleccionar en el combobox de tipo de componentes:
            JOptionPane.showMessageDialog(this, "No se ha seleccionado ningun alumno!", "ERROR", JOptionPane.INFORMATION_MESSAGE);
        }
        if (jPrestamosCmbComponentes.getSelectedItem().equals("Seleccionar")) {
            //Si se seleccionó Seleccionar en el combobox  de componentes:
            JOptionPane.showMessageDialog(this, "No se ha seleccionado ningun componente!", "ERROR", JOptionPane.INFORMATION_MESSAGE);
        } 
        else{
            //Creo un objeto datos para la conexión a la base de datos
            Datos oDatos = new Datos();
            //Creo un objeto alumnos.
            Persona oAlumno = new Persona();
            //Creo un objeto préstamos para asignar el préstamo ocurrido.
            Prestamos oPrestamos = new Prestamos();
            //Creo un objeto Varias.
            Varias oVarias = new Varias();
            try {
                //Seteo al objeto alumno los atributos de la base de datos.
                oAlumno = oDatos.getDatosPersona((String)jPrestamoscmbNombre.getSelectedItem());
                oPrestamos.setsLegajo(oDatos.getLastLegajo("Prestamos.db", "prestamos"));//Seteo el legajo del préstamo.
            } catch (Exception ex) {}
            oPrestamos.setsCantidad(jPrestamosTxtCantidad.getText());//Seteo la cantidad de elementos. prestados.
            oPrestamos.setsNombreA(oAlumno.getsNombre());//Seteo el nombre del alumno.
            oPrestamos.setsFecha_Inicial(oVarias.getFecha());//Seteo la fecha
            //del préstamo llamando a la función getFecha.
            oPrestamos.setsFecha_Entrega("");//Setea la fecha de entrega.
            if (jPrestamosCmbTipoComponentes.getSelectedItem().equals("componentes")) {
                //Si se seleccionó componentes en el combobox de tipo de componentes:
                //Creo un obejeto componentes:
                Componentes oComponentes = new Componentes();
                try {
                    //Llamo a la función getDatosComponentes para guardarlos en el objeto creado.
                    oComponentes = oDatos.getDatosComponentes((String)jPrestamosCmbComponentes.getSelectedItem());
                    oPrestamos.setsNombreU(oComponentes.getsNombre());//Seteo el nombre del elemento.
                    //Llama a la función setDatosPrestamos para guardar los datos en la base de datos.
                    oDatos.setDatosPrestamos(oPrestamos);
                    //Llama a la función updateDatosCantidad y a la función resta
                    //para dejar constancia de los elementos prestados.
                    oDatos.updateDatosCantidad("componentes", oDatos.Resta(oPrestamos.sCantidad, oComponentes.sStock_actual), oComponentes.sLeg);
                } catch (Exception ex) {}
                //Creo un String con el cuerpo del email.
                String sCuerpoE = "Se ha entregado al taller de electronica el elemento "
                        + oComponentes.sNombre +  " la cantidad de " + oPrestamos.sCantidad 
                        + " en la fecha: " + oPrestamos.sFecha_Inicial;
                //Envío un email para recordar el pŕestamo entregado.
                oVarias.EnviarMail(oAlumno.sEmail, sCuerpoE, "Préstamo Realizado");
                //Muestra un mensaje.
                JOptionPane.showMessageDialog(this, "Se ha prestado a " +oAlumno.sNombre+" el"
                + "elemento "+oComponentes.sNombre+ "!", "GRABADO", JOptionPane.INFORMATION_MESSAGE);                    
            }
            if (jPrestamosCmbTipoComponentes.getSelectedItem().equals("bibliografia")) {
                //Si se seleccionó bibliografía en el combobox de tipo de componentes:
                //Creo un objeto basico:
                Basico oBasico = new Basico();
                try {
                    //Llamo a la función getDatosBibliografía para guardarlos en el objeto creado.
                    oBasico = oDatos.getDatosBibliografia((String)jPrestamosCmbComponentes.getSelectedItem());
                    oPrestamos.setsNombreU(oBasico.getsNombre());//Seteo el nombre del elemento.
                    //Llama a la función setDatosPrestamos para guardar los datos en la base de datos.
                    oDatos.setDatosPrestamos(oPrestamos);
                    //Llama a la función updateDatosCantidad y a la función resta
                    //para dejar constancia de los elementos prestados.
                    oDatos.updateDatosCantidad("bibliografia", oDatos.Resta(oPrestamos.sCantidad, oBasico.sStock_actual), oBasico.sLeg);
                    //Creo un String con el cuerpo del email.
                    String sCuerpoE = "Se ha entregado al taller de electronica el elemento "
                        + oBasico.sNombre +  " la cantidad de " + oPrestamos.sCantidad 
                        + " en la fecha: " + oPrestamos.sFecha_Inicial;
                    //Envío un email para recordar el pŕestamo entregado.
                    oVarias.EnviarMail(oAlumno.sEmail, sCuerpoE, "Préstamo Realizado");
                    //Muestra un mensaje.
                    JOptionPane.showMessageDialog(this, "Se ha prestado a " +oAlumno.sNombre+" el"
                            + "elemento "+oBasico.sNombre+ "!", "GRABADO", JOptionPane.INFORMATION_MESSAGE);
                } catch (Exception ex) {}
            }
            if (jPrestamosCmbTipoComponentes.getSelectedItem().equals("equipos")) {
                //Si se seleccionó equipos en el combobox de tipo de componentes:
                //Creo un objeto equipos:
                Equipos oEquipos = new Equipos();
                try {
                    //Llamo a la función getDatosEquipos para guardarlos en el objeto creado.
                    oEquipos = oDatos.getDatosEquipos((String)jPrestamosCmbComponentes.getSelectedItem());
                    oPrestamos.setsNombreU(oEquipos.getsNombre());//Seteo el nombre del elemento.
                    //Llama a la funcipon setDatosPrestamos para guardar los datos en la base de datos.
                    oDatos.setDatosPrestamos(oPrestamos);
                    //Llama a la función updateDatosCantidad y a la función resta
                    //para dejar constancia de los elementos prestados.
                    oDatos.updateDatosCantidad("equipos", oDatos.Resta(oPrestamos.sCantidad, oEquipos.sStock_actual), oEquipos.sLeg);
                    //Muestro un mensaje.
                    JOptionPane.showMessageDialog(this, "Se ha prestado a " +oAlumno.sNombre+" el"
                            + "elemento "+oEquipos.sNombre+ "!", "GRABADO", JOptionPane.INFORMATION_MESSAGE);
                    //Creo un String con el cuerpo del email.
                    String sCuerpoE = "Se ha entregado al taller de electronica el elemento "
                            + oEquipos.sNombre +  " la cantidad de " + oPrestamos.sCantidad 
                            + " en la fecha: " + oPrestamos.sFecha_Inicial;
                    //Envío un email para recordar el pŕestamo entregado.
                    oVarias.EnviarMail(oAlumno.sEmail, sCuerpoE, "Préstamo Realizado");
                    } catch (Exception ex) {}
            }
            //Llama a la función LimpiarPrestamos
            LimpiarPrestamos();
        }
}//GEN-LAST:event_jPrestamosBtnCargarActionPerformed

    private void jPrestamosCmbComponentesItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_jPrestamosCmbComponentesItemStateChanged
        //Cuando se seleccionó un item del combobox de los componentes:
        //Creo un objeto Datos para la conexión a la base de datos:
        Datos oDatos = new Datos();
        if (jPrestamosCmbTipoComponentes.getSelectedItem().equals("componentes")) {
            //Si se seleccionó componentes en el combobox de tipo de componentes:
            //Creo un obejeto componentes:
            Componentes oComponentes = new Componentes();
            try {
                //Llamo a la función getDatosComponentes para guardarlos en el objeto creado.
                oComponentes = oDatos.getDatosComponentes((String)jPrestamosCmbComponentes.getSelectedItem());
            } catch (Exception ex) {
            }
            //Seteo el stock actual en la casilla de la ventana de prestamos.
            jPrestamosTxtCantidad.setText(oComponentes.sStock_actual);
        }
        if (jPrestamosCmbTipoComponentes.getSelectedItem().equals("bibliografia")) {
            //Si se seleccionó bibliografía en el combobox de tipo de componentes:
            //Creo un obejeto basico:
            Basico oBasico = new Basico();
            try {
                //Llamo a la función getDatosBibliografía para guardarlos en el objeto creado.
                oBasico = oDatos.getDatosBibliografia((String)jPrestamosCmbComponentes.getSelectedItem());
            } catch (Exception ex) {
            }
            //Seteo el stock actual en la casilla de la ventana de prestamos.
            jPrestamosTxtCantidad.setText(oBasico.sStock_actual);
        }
        if (jPrestamosCmbTipoComponentes.getSelectedItem().equals("equipos")) {
            //Si se seleccionó equipos en el combobox de tipo de componentes:
            //Creo un obejeto equipos:
            Equipos oEquipos = new Equipos();
            try {
                //Llamo a la función getDatosEquipos para guardarlos en el objeto creado.
                oEquipos = oDatos.getDatosEquipos((String)jPrestamosCmbComponentes.getSelectedItem());
            } catch (Exception ex) {
            }
            //Seteo el stock actual en la casilla de la ventana de prestamos.
            jPrestamosTxtCantidad.setText(oEquipos.sStock_actual);
        }
        if (jPrestamosCmbTipoComponentes.getSelectedItem().equals("Seleccionar")) {
            //Si se seleccionó Seleccionar en el combobox de tipo de componentes:
            //Seteo el stock actual en nada.
            jPrestamosTxtCantidad.setText("");
        }
}//GEN-LAST:event_jPrestamosCmbComponentesItemStateChanged

    private void jPrestamosCmbTipoComponentesItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_jPrestamosCmbTipoComponentesItemStateChanged
        //Si se cambio el estado del combobox del tipo de componente.
        //Creo un objeto datos para la conexión a la base de datos.
        Datos oDatos = new Datos();
        try {
            //Llama a un bucle para catear todos los alumnos en una lista.
            for (int i=0; oDatos.DatosElementos((String) jPrestamosCmbTipoComponentes.getSelectedItem()).length()>i ;i++) {
                //Setea en un array todos los alumnos.
                sCmbBox.add(oDatos.DatosElementos((String) jPrestamosCmbTipoComponentes.getSelectedItem()).split(":")[i]);
            }
        }catch(Exception e){
        }
        //Setea en el combobox de prestamos todos los alumnos.
        jPrestamosCmbComponentes.setModel(Varias.LimitarCmbBoxUser(sCmbBox));
}//GEN-LAST:event_jPrestamosCmbTipoComponentesItemStateChanged

    private void jPrestamoscbxCursoItemStateChanged(java.awt.event.ItemEvent evt) {//GEN-FIRST:event_jPrestamoscbxCursoItemStateChanged
        //Si se cambio el estado del combobox de los cursos.
        //Creo un objeto datos para la conexión a la base de datos.
        Datos oDatos = new Datos();
        try {
            //Llama a un bucle para catear todos los alumnos en una lista.
            for (int i=0; oDatos.DatosPersona((String) jPrestamoscbxCurso.getSelectedItem()).length()>i ;i++) {
                //Setea en un array todos los alumnos.
                sCmbBox.add(oDatos.DatosPersona((String) jPrestamoscbxCurso.getSelectedItem()).split(":")[i]);
            }
        }catch(Exception e){
        }
        //Setea en el combobox de prestamos todos los alumnos.
        jPrestamoscmbNombre.setModel(Varias.LimitarCmbBoxUser(sCmbBox));
}//GEN-LAST:event_jPrestamoscbxCursoItemStateChanged

    private void jCerrarLblMouseClicked(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jCerrarLblMouseClicked
        //Si se presióno el label de cerrar:
        int RespuestaJOptionPane = JOptionPane.showConfirmDialog(this, "¿Esta seguro que desea salir del sistema?", "Usted esta saliendo del sistema", JOptionPane.OK_CANCEL_OPTION);
        if (RespuestaJOptionPane == JOptionPane.OK_OPTION)
        {
        this.dispose();//Cierro al ventana.
        new jFrmUsuario().setVisible(true);//Se llama la ventana de logueo.
        }
    }//GEN-LAST:event_jCerrarLblMouseClicked

    private void jCerrarLblMouseEntered(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jCerrarLblMouseEntered
        // Si se colocó el mouse arriba del label cerrar:
        jUsuarioLbl.setCursor(new Cursor(Cursor.HAND_CURSOR));
        jCerrarLbl.setForeground(Color.blue);
        jIconoLbl.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/user-offline.png")));
    }//GEN-LAST:event_jCerrarLblMouseEntered

    private void jCerrarLblMouseExited(java.awt.event.MouseEvent evt) {//GEN-FIRST:event_jCerrarLblMouseExited
        //Si el mouse se retiró del label cerrar:
        jUsuarioLbl.setCursor(new Cursor(Cursor.DEFAULT_CURSOR));
        jCerrarLbl.setForeground(Color.black);
        jIconoLbl.setIcon(new javax.swing.ImageIcon(getClass().getResource("/Imagenes/user-online.png"))); 
    }//GEN-LAST:event_jCerrarLblMouseExited

    private void jBiblEleminarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBiblEleminarActionPerformed
        //Si se presionó este botón eliminar bibliografía:
        //Crea un objeto Datos para la conexión de la base de datos.
        Datos oDatos = new Datos();
        //Crea un objeto Bibliografía para cargar los datos en pantalla.
        Basico oBasico = new Basico();
        //Si el casillero del nombre está vacío:
        if (jBiblTxtNombre.getText().length() < 1) {
            //Si no hay nada escrito en el nombre:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Proporcione el nombre del elemento a eliminar", "ERROR", JOptionPane.ERROR_MESSAGE);
        } 
        else{
            //Si hay escrito un nombre:
            try {
                //Asigna los atributos de la base de datos al objeto Bibliografía.
                oBasico = oDatos.getDatosBibliografia(jBiblTxtNombre.getText());
                } catch (Exception ex) {}
            if (oBasico.sLeg == null)
            {
                //Si no se encontró un elemento con el nombre proporcionado:
                //Muestra un mensaje de error.
                JOptionPane.showMessageDialog(this, "Elemento no encontrado", "ERROR", JOptionPane.ERROR_MESSAGE);
            }
            else
            {
                //Si se encontró el elemento:
                //Muestra un mensaje de advertencia que los datos serán borrados.
                int i = JOptionPane.showConfirmDialog(this, "Esta seguro que quiere eliminar a "
                        + oBasico.getsNombre(), "Atención", JOptionPane.YES_NO_OPTION);
                //Si la respuesta fue afirmativa:
                if (i == 0) {
                    try {
                        //Llama a la función delDatos para borrar toda la
                        //información con el nombre asignado.
                        oDatos.DelDato("Componentes.db", "bibliografia", oBasico.sNombre);
                        //Muestra un mensaje de correcto borrado.
                        JOptionPane.showMessageDialog(this, "Datos borrados correctamente!", "Borrado", JOptionPane.INFORMATION_MESSAGE);
                    } catch (Exception ex) {}
                }
            }     
        }
        //Llama la función LimpiarBibliografia para borrar todos los text files.
        LimpiarBibliografia();
}//GEN-LAST:event_jBiblEleminarActionPerformed

    private void jBiblModificarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBiblModificarActionPerformed
        //Si se presionó el botón de modificar un equipo:
        //Crea un objeto Datos.
        Datos oDato = new Datos();
        //Crea un objeto Equipos.
        Basico oBasico = new Basico();
        if (jBiblTxtNombre.getText().isEmpty())
        {
            //Si no hay nada escrito en el casillero del nombre:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Proporcionar un nombre", "ERROR", JOptionPane.ERROR_MESSAGE);
        }
        else
        {
            //Si se proporcionó un nombre:
            try {
                //Busco en la base de datos el elemento y los seteo en un objeto básico.
                oBasico = oDato.getDatosBibliografia(jBiblTxtNombre.getText());
            } catch (Exception ex) {}
            if (oBasico.sLeg == null)
            {
                //Si no se encontró un elemento con el nombre proporcionado:
                //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Elemento no encontrado", "ERROR", JOptionPane.ERROR_MESSAGE);
            }
            else
            {
                oBasico.setsStock_deseado(jBiblTxtStockD.getText());//Setea el stock que debería haber.
                oBasico.setsStock_actual(jBiblTxtStockA.getText());//Setea el stock actual de la bibliografía.
                oBasico.setsUbicacion(jBiblTxtUbicacion.getText());//Setea la ubicación de la bibliografía.
                oBasico.setsAclaraciones(jBiblTxtAclar.getText());//Setea las aclaraciones de la bibliografía.
                try {
                //Llama a la función updateDatosBibliografia para realizar la actualización.
                oDato.updateDatosBibliografia(oBasico);
                //Muestra un mensaje de información que los datos se guardaron correctamente.
                JOptionPane.showMessageDialog(this, "Datos actualizados correctamente!", "Grabado", JOptionPane.INFORMATION_MESSAGE);
            } catch (Exception ex) {}
            }        
        }                       
            //Llama la función LimpiarBibliografia para borrar todos los text files.
            LimpiarBibliografia();
}//GEN-LAST:event_jBiblModificarActionPerformed

    private void jBiblLimpiarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBiblLimpiarActionPerformed
        //Si se presiona este boton:
        //Llama la función LimpiarBibliografia para borrar todos los text files.
        LimpiarBibliografia();
}//GEN-LAST:event_jBiblLimpiarActionPerformed

    private void jBiblBuscarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBiblBuscarActionPerformed
        // Cuando se presiona el botón de Buscar una bibliografia :
        //Crea un objeto Datos para la conexión a la base de datos.
        Datos oDatos = new Datos();
        //Crea un objeto Basico para cargarle los datos a mostrar.
        Basico oBasico = new Basico();
        //Si el casillero de nombre está vacío:
        if (jBiblTxtNombre.getText().length() < 1) {
            //Si no hay nada escrito en el nombre:
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Proporcionar un Nombre para buscar", "ERROR", JOptionPane.ERROR_MESSAGE);
        }        
        else {
            //Si hay un texto escrito en la casilla del nombre:
            try {
                //Asigna al objeto basico los datos de la base de datos.
                oBasico = oDatos.getDatosBibliografia(jBiblTxtNombre.getText());
                } catch (Exception ex) {}
                if (oBasico.sNombre == null)
                {
                    //Si la bibliografía no existe:
                    //Muestra un mensaje de error.
                     JOptionPane.showMessageDialog(this, "Bibliografía no encontrada", "ERROR", JOptionPane.ERROR_MESSAGE);
                     //Llama a la función LimpiarBibliografia.
                     LimpiarBibliografia();
                }
                else{
                    //Si la bibliografía es encontrada:
                    jBiblTxtStockD.setText(oBasico.getsStock_deseado());//Setea el stock deseado en el casillero.
                    jBiblTxtStockA.setText(oBasico.getsStock_actual());//Setea el stock actual en el casillero.
                    jBiblTxtUbicacion.setText(oBasico.getsUbicacion());//Setea la ubicación de la bibliografía en el casillero.
                    jBiblTxtAclar.setText(oBasico.getsAclaraciones());//Setea las aclaraciones en el casillero.
                }               
        }
}//GEN-LAST:event_jBiblBuscarActionPerformed

    private void jBiblCargarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jBiblCargarActionPerformed
        // Cuando se presiona el botón de cargar una bibliografía:
        //Creamos un objeto Bibliografía.
        Basico oBasico = new Basico();
        //Creamos un objeto Datos.
        Datos oDatos = new Datos();
        oBasico.setsNombre(jBiblTxtNombre.getText());//Setea el nombre del equipo.
        oBasico.setsStock_deseado(jBiblTxtStockD.getText());//Setea el stock que debería haber.
        oBasico.setsStock_actual(jBiblTxtStockA.getText());//Setea el stock actual del equipo.
        oBasico.setsUbicacion(jBiblTxtUbicacion.getText());//Setea la ubicación del equipo.
        oBasico.setsAclaraciones(jBiblTxtAclar.getText());//Setea las aclaraciones del equipo.
        if (oBasico.sNombre.equals("") || oBasico.sAclaraciones.equals("") || oBasico.sStock_actual.equals("") || oBasico.sStock_deseado.equals("") || oBasico.sUbicacion.equals(""))
        {
            //Muestra un mensaje de error.
            JOptionPane.showMessageDialog(this, "Faltan datos a ingresar \n no se ha Grabado!", "ERROR", JOptionPane.ERROR_MESSAGE);   
        }
        else{
            try {
                //Llamo a la función getLastLegajo para setear el legajo del elemento.
                oBasico.setsLeg(oDatos.getLastLegajo("Componentes.db", "bibliografia"));
                //Guardo en la base de datos el equipo ingresado.
                oDatos.setDatosBibliografia(oBasico);
                //Oculta la ventana de la bibliografía.
                jFrameBibliografia.setVisible(false);
                //Muestra un mensaje de aviso que todo se guardó correctamente.
                JOptionPane.showMessageDialog(this, "Los Datos se guardaron correctamente", "Cargado Correcto", JOptionPane.INFORMATION_MESSAGE);
            } catch (Exception ex) {}
        }
}//GEN-LAST:event_jBiblCargarActionPerformed

    private void jPrestamosBtnLimpiarActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jPrestamosBtnLimpiarActionPerformed
        //Si se presionó el botón Limpiar de la pestaña prestamos:
        //Llama a la función LimpiarPrestamos.
        LimpiarPrestamos();
    }//GEN-LAST:event_jPrestamosBtnLimpiarActionPerformed

    private void jConfigBtnPersonasActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jConfigBtnPersonasActionPerformed
        //Si se presionó el botón buscar del archivo de las personas:
        //Creo un objeto JFileCooser.
        JFileChooser dlg = new JFileChooser();
        //Abre la ventana de dialogo
        int option = dlg.showOpenDialog(this);
        //Si hace click en el boton abrir del dialogo
        if(option==JFileChooser.APPROVE_OPTION) {
            //Obtiene nombre del archivo seleccionado
            String file = dlg.getSelectedFile().getPath();
            jConfigTxtPersonas.setText(file);//Setea en el textfile el path del
            //archivo.
        }
    }//GEN-LAST:event_jConfigBtnPersonasActionPerformed

    private void jConifgBtnComponentesActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jConifgBtnComponentesActionPerformed
        //Si se presionó el botón buscar del archivo de los componentes:
        //Creo un objeto JFileCooser.
        JFileChooser dlg = new JFileChooser();
        //Abre la ventana de dialogo
        int option = dlg.showOpenDialog(this);
        //Si hace click en el boton abrir del dialogo
        if(option==JFileChooser.APPROVE_OPTION) {
            //Obtiene nombre del archivo seleccionado
            String file = dlg.getSelectedFile().getPath();
            jConfigTxtComponentes.setText(file);//Setea en el textfile el path del
            //archivo.
        }
    }//GEN-LAST:event_jConifgBtnComponentesActionPerformed

    private void jConfigBtnPrestamosActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jConfigBtnPrestamosActionPerformed
        //Si se presionó el botón buscar del archivo de los prestamos:
        //Creo un objeto JFileCooser.
        JFileChooser dlg = new JFileChooser();
        //Abre la ventana de dialogo
        int option = dlg.showOpenDialog(this);
        //Si hace click en el boton abrir del dialogo
        if(option==JFileChooser.APPROVE_OPTION) {
            //Obtiene nombre del archivo seleccionado
            String file = dlg.getSelectedFile().getPath();
            jConfigTxtPrestamos.setText(file);//Setea en el textfile el path del
            //archivo.
        }
    }//GEN-LAST:event_jConfigBtnPrestamosActionPerformed

    private void jtxtInformeHyperlinkUpdate(javax.swing.event.HyperlinkEvent evt) {//GEN-FIRST:event_jtxtInformeHyperlinkUpdate
        //Si se colocó el mouse arriba del link y el usuario es un profesOR o un
//administradOR:
        if (evt.getEventType() == HyperlinkEvent.EventType.ACTIVATED && oMiPersona.sPrivilegios.endsWith("or")) 
        {
            //Si se presionó un link:
            //Creo un objeto Prestamos.
            Prestamos oPrestamos = new Prestamos();
            //Creo un objeto Datos.
            Datos oDatos = new Datos();
            //Creo un objeto Varias.
            Varias oVarias = new Varias();
            //Creo un objeto Persona:
            Persona oPersona = new Persona();
            try {
                //Cargo los datos del prestamo según el legajo que se obtiene 
                //de presionar el link mediante evt.getURL().getRef().
                oPrestamos = oDatos.getDatosPrestamos(evt.getURL().getRef());
                //Cargo los datos del alumno según el objeto oPrestamos.
                oPersona = oDatos.getDatosPersona(oPrestamos.sNombreA);
            } catch (Exception ex) {}
            //Seteo la fecha de entrega del componente con la fecha que me
            //devuelve la función getFecha.
            oPrestamos.setsFecha_Entrega(oVarias.getFecha());
            try {
                //Guardo los datos cambiados en la base de datos.
                oDatos.updateDatosPrestamos(oPrestamos);
                //Vuelvo a setear el text area con la entrega de prestamos realizada
                jtxtInforme.setText(oDatos.DatosPrestamostoHtml(jPrestamosCmbOrdenar.getSelectedItem().toString()));
            } catch (Exception ex) {}
            //Creo un String con el cuerpo del email.
                String sCuerpoE = "Se ha devuelto al taller de electronica el elemento "
                        + oPrestamos.sNombreU +  " la cantidad de " + oPrestamos.sCantidad 
                        + " en la fecha: " + oPrestamos.sFecha_Entrega;
                //Envío un email para recordar el pŕestamo entregado.
                oVarias.EnviarMail(oPersona.sEmail, sCuerpoE, "Préstamo Realizado");
        }
    }//GEN-LAST:event_jtxtInformeHyperlinkUpdate

    private void jElectroInventarioStateChanged(javax.swing.event.ChangeEvent evt) {//GEN-FIRST:event_jElectroInventarioStateChanged
        //Si se cambio de pestaña:
        if (jElectroInventario.getSelectedIndex() == 0)
        {
           //Si se seleccionó la pestaña préstamos:
           LimpiarPrestamos();
        }
        
        if (jElectroInventario.getSelectedIndex() == 1)
        {
            //Si se seleccionó la pestaña cursos:
            //Llamo a la función LimpiarCursos:
            LimpiarCursos();
        }
        
        if (jElectroInventario.getSelectedIndex() == 2)
        {
            //Si se seleccionó la pestaña componentes:
            //Setea el combo box en seleccionar.
            jCompCmbItem.setSelectedItem("Seleccionar");
        }
    }//GEN-LAST:event_jElectroInventarioStateChanged

    private void jCreditosBtnActionPerformed(java.awt.event.ActionEvent evt) {//GEN-FIRST:event_jCreditosBtnActionPerformed
        //Si se presionó el botón de créditos:
        //Seteo la ventana créditos:
        jCreditos.setSize(500, 500);
        //Coloco la ventana en el centro de la pantalla:
        jCreditos.setLocationRelativeTo(this);
        //Hago visible a la ventana.
        jCreditos.setVisible(true);
    }//GEN-LAST:event_jCreditosBtnActionPerformed

    /**
     * @param args the command line arguments
     */
    public static void main(String args[]) {
        //Inicia una ventana para mostrar un logo momentáneo.
        new Thread (new jFrmBienvenido()).start();
        java.awt.EventQueue.invokeLater(new Runnable() {
            @Override
            public void run() {}});
    }
    // Variables declaration - do not modify//GEN-BEGIN:variables
    private javax.swing.ButtonGroup buttonGroup1;
    private javax.swing.JButton jBiblBuscar;
    private javax.swing.JButton jBiblCargar;
    private javax.swing.JButton jBiblEleminar;
    private javax.swing.JLabel jBiblLblAclar;
    private javax.swing.JLabel jBiblLblNombre;
    private javax.swing.JLabel jBiblLblStockA;
    private javax.swing.JLabel jBiblLblStockD;
    private javax.swing.JLabel jBiblLblUbicacion;
    private javax.swing.JButton jBiblLimpiar;
    private javax.swing.JButton jBiblModificar;
    private javax.swing.JScrollPane jBiblScrollPane;
    private javax.swing.JTextArea jBiblTxtAclar;
    private javax.swing.JTextField jBiblTxtNombre;
    private javax.swing.JTextField jBiblTxtStockA;
    private javax.swing.JTextField jBiblTxtStockD;
    private javax.swing.JTextField jBiblTxtUbicacion;
    private javax.swing.JButton jButton4;
    private javax.swing.JLabel jCerrarLbl;
    private javax.swing.JButton jCompAgregar;
    private javax.swing.JButton jCompBtnBuscar;
    private javax.swing.JButton jCompBtnCargar;
    private javax.swing.JButton jCompBtnEliminar;
    private javax.swing.JButton jCompBtnLimpiar;
    private javax.swing.JButton jCompBtnModificar;
    private javax.swing.JComboBox jCompCmbCategoria;
    private javax.swing.JComboBox jCompCmbItem;
    private javax.swing.JComboBox jCompCmbSubcategoria;
    private javax.swing.JLabel jCompLblAclar;
    private javax.swing.JLabel jCompLblCategoria;
    private javax.swing.JLabel jCompLblEncapsulado;
    private javax.swing.JLabel jCompLblNombre;
    private javax.swing.JLabel jCompLblPotencia;
    private javax.swing.JLabel jCompLblStockA;
    private javax.swing.JLabel jCompLblStockD;
    private javax.swing.JLabel jCompLblSubcategoria;
    private javax.swing.JLabel jCompLblTension;
    private javax.swing.JLabel jCompLblUbicacion;
    private javax.swing.JLabel jCompLblValor;
    private javax.swing.JScrollPane jCompScrollPane;
    private javax.swing.JTextArea jCompTxtAclar;
    private javax.swing.JTextField jCompTxtEncapsulado;
    private javax.swing.JTextField jCompTxtNombre;
    private javax.swing.JTextField jCompTxtPotencia;
    private javax.swing.JTextField jCompTxtStockA;
    private javax.swing.JTextField jCompTxtStockD;
    private javax.swing.JTextField jCompTxtTension;
    private javax.swing.JTextField jCompTxtUbicacion;
    private javax.swing.JTextField jCompTxtValor;
    private javax.swing.JButton jCompVerStock;
    private javax.swing.JScrollPane jConfScrollPersonas;
    private javax.swing.JButton jConfigBtnPersonas;
    private javax.swing.JButton jConfigBtnPrestamos;
    private javax.swing.JLabel jConfigLblComponentes;
    private javax.swing.JLabel jConfigLblPersonas;
    private javax.swing.JLabel jConfigLblPrestamos;
    private javax.swing.JScrollPane jConfigScrollComponentes;
    private javax.swing.JScrollPane jConfigScrollPrestamos;
    private javax.swing.JTextArea jConfigTxtComponentes;
    private javax.swing.JTextArea jConfigTxtPersonas;
    private javax.swing.JTextArea jConfigTxtPrestamos;
    private javax.swing.JButton jConifgBtnComponentes;
    private javax.swing.JDialog jCreditos;
    private javax.swing.JButton jCreditosBtn;
    private javax.swing.JLabel jCreditosLbl;
    private javax.swing.JTextArea jCreditosTxtFranco;
    private javax.swing.JTextArea jCreditosTxtPato;
    private javax.swing.JButton jCursoBtnBuscar;
    private javax.swing.JButton jCursoBtnEleminar;
    private javax.swing.JButton jCursoBtnGuardar;
    private javax.swing.JButton jCursoBtnLimpiar;
    private javax.swing.JButton jCursoBtnModificar;
    public javax.swing.JComboBox jCursoCmbPrivilegios;
    private javax.swing.JLabel jCursoLblPass;
    private javax.swing.JLabel jCursoLblPrivilegios;
    private javax.swing.JButton jCursoVerLista;
    private javax.swing.JComboBox jCursocbxCurso;
    private javax.swing.JLabel jCursolblCurso;
    private javax.swing.JLabel jCursolblEmail;
    private javax.swing.JLabel jCursolblNombre;
    private javax.swing.JLabel jCursolblTelefono;
    public javax.swing.JPanel jCursospnl;
    private javax.swing.JTextField jCursotxtNombre;
    private javax.swing.JPasswordField jCursotxtPass;
    private javax.swing.JTextField jCursotxtfEmail;
    private javax.swing.JTextField jCursotxtfTelefono;
    public javax.swing.JTabbedPane jElectroInventario;
    private javax.swing.JButton jEquipoBtnBuscar;
    private javax.swing.JButton jEquipoBtnCargar;
    private javax.swing.JButton jEquipoBtnEliminar;
    private javax.swing.JButton jEquipoBtnLimpiar;
    private javax.swing.JButton jEquipoBtnModificar;
    private javax.swing.JLabel jEquipoLblAclar;
    private javax.swing.JLabel jEquipoLblCod;
    private javax.swing.JLabel jEquipoLblDescrip;
    private javax.swing.JLabel jEquipoLblManual;
    private javax.swing.JLabel jEquipoLblNombre;
    private javax.swing.JLabel jEquipoLblStockA;
    private javax.swing.JLabel jEquipoLblStockD;
    private javax.swing.JLabel jEquipoLblUbManual;
    private javax.swing.JLabel jEquipoLblUbicacion;
    private javax.swing.JScrollPane jEquipoScrollPane2;
    private javax.swing.JScrollPane jEquipoScrollPane3;
    private javax.swing.JTextArea jEquipoTxtAclar;
    private javax.swing.JTextField jEquipoTxtCod;
    private javax.swing.JTextArea jEquipoTxtDesc;
    private javax.swing.JTextField jEquipoTxtManual;
    private javax.swing.JTextField jEquipoTxtNombre;
    private javax.swing.JTextField jEquipoTxtStockA;
    private javax.swing.JTextField jEquipoTxtStockD;
    private javax.swing.JTextField jEquipoTxtUbManual;
    private javax.swing.JTextField jEquipoTxtUbicacion;
    private javax.swing.JFrame jFrameBibliografia;
    private javax.swing.JFrame jFrameComponentes;
    private javax.swing.JFrame jFrameEquipos;
    private javax.swing.JDialog jFrameInformes;
    private javax.swing.JLabel jIconoLbl;
    private javax.swing.JButton jInformeBtnImprimir;
    private javax.swing.JLabel jLblAclaracion;
    private javax.swing.JPanel jPnlComp;
    private javax.swing.JPanel jPnlConfig;
    private javax.swing.JPanel jPnlCursos;
    private javax.swing.JPanel jPnlEquipoBibl;
    private javax.swing.JPanel jPnlPrestamos;
    private javax.swing.JButton jPrestamosBtnCargar;
    private javax.swing.JButton jPrestamosBtnLimpiar;
    private javax.swing.JButton jPrestamosBtnVer;
    private javax.swing.JComboBox jPrestamosCmbComponentes;
    private javax.swing.JComboBox jPrestamosCmbOrdenar;
    private javax.swing.JComboBox jPrestamosCmbTipoComponentes;
    private javax.swing.JLabel jPrestamosLblCantidad;
    private javax.swing.JLabel jPrestamosLblOrdenar;
    private javax.swing.JLabel jPrestamosLblTipoE;
    private javax.swing.JTextField jPrestamosTxtCantidad;
    private javax.swing.JComboBox jPrestamoscbxCurso;
    private javax.swing.JComboBox jPrestamoscmbNombre;
    private javax.swing.JLabel jPrestamoslblComponentes;
    private javax.swing.JLabel jPrestamoslblCurso;
    private javax.swing.JLabel jPrestamoslblNombre;
    private javax.swing.JScrollPane jScrollPane1;
    private javax.swing.JScrollPane jScrollPane2;
    private javax.swing.JScrollPane jTextPane1;
    private javax.swing.JLabel jUsuarioLbl;
    private javax.swing.JPanel jpnlInforme;
    private javax.swing.JEditorPane jtxtInforme;
    // End of variables declaration//GEN-END:variables
}
